C 基礎 C 對比C語言的增強

2021-10-25 18:04:39 字數 1026 閱讀 4575

void

func()

在c編譯器中,執行錯誤,a和b必須在最開始宣告;

在c++編譯器中,執行正常,區域性變數隨時用,隨時宣告即可。

register關鍵字作用:

register a;

// 請求編譯器讓變數a直接放在暫存器裡面,速度快

c語言中, register修飾的變數 不能取位址,

c++編譯器有自己的優化方式,不使用register也可能做優化

c++中可以取得register變數的位址,c++編譯器發現程式中需要取register變數的位址時,register對變數的宣告變得無效。

void

func()

在c中執行錯誤,c++中正常執行。

不使用register也會做優化:

void

func()

}

int g_var=

210;

int g_var;

intmain

(int argc,

char

*ar**)

在c語言中,輸出正常:210;

在c++中,執行出錯,變數重定義。

c語言struct定義了一組變數的集合,c編譯器不認為這是一種新的型別;

c++編譯器中的struct是乙個新型別的定義宣告;

struct student

;int

main

(int argc,

char

*ar**)

;// c語言中必須前面加上struct關鍵字:

// struct student s1 = ;

// struct student s2 = ;

student s2 =

;return0;

}

c 對c語言上的增強

include iostream using namespace std c語言中的變數都必須在作用域開始的位置定義!c 中更強調語言的 實用性 所有的變數都可以在需要使用時再定義。include using namespace std c語言中的變數都必須在作用域開始的位置定義!c 中更強調語言的...

C語言和C 對比

c 語言 c c cpp c 語言 gcc 檔名.c o hello hello為自定義名稱 c g 檔名.cpp c語言 300 500之間能被3和7整除的偶數 include 預處理指令 int main return 0 c 300 500之間能被3和7整除的偶數 include 標頭檔案 u...

C 語言和C 語言的 struct對比

c 語言和c 語言的 struct對比 author stonehat 1.c 語言將struct當成類來處理的,所以c 的struct可以包含c 類的所有東西,例如建構函式,析構函式,友元等,c 的struct和c 類唯一不同就是 struct成員預設的是public,c 預設private。而c...