C到C 的公升級(學習筆記)

2021-07-28 20:58:22 字數 874 閱讀 6858

1.c++是c的後代,c++繼承了所有c特性。

2.c語言帶有許多低階語言的特性,c++在c的基礎上增加了更多的語法和特性:支援物件導向(最為重要)、型別加強、函式加強、異常處理等。

3.c++的設計目標是執行效率和開發效率的統一

1.c++更為強調實用性

例1 c++中所有變數都可以在需要時再定義,而c語言中變數都必須在作用域開始的位置定義

int c = 0;

for(int i = 0;i < 100;i++)

}2.c++中支援register關鍵字以相容c語言

在c語言中無法獲取register變數的位址,c++中可以獲取register變數的位址(c++編譯器有自己的優化方式)

對於register變數的處理由編譯器決定,有微控制器裸機程式設計經歷的小夥伴可以看看keil是怎麼處理的。

3.在c語言中,重複定義多個全域性變數是合法的,而在c++中是不合法的,c++拒絕這種二義性的做法。

4.struct關鍵字的加強

c語言中struct定義的是一組變數的集合,struct定義的識別符號並不是一種新的型別,而c++中用於定義乙個全新的型別

5.c++中所有的識別符號必須顯示宣告型別,而c語言許多預設型別(潛規則)在c++中是不合法的

例2 請問 int f()與 int f(void)的區別,如果有區別,是什麼?

答:如果使用c++的編譯器編譯,沒有區別

如果使用c的編譯器編譯,有區別。前者,為返回值為整型,接受任意引數的函式;後者為返回值為整型的無引數函式。

1.c++比c更加嚴謹和實用

2.c++中的register只是起乙個相容的作用

3.c++編譯器能夠更好的優化

4.c++識別符號必須顯示和指明型別,c++比c更加明了直觀。

C 學習筆記3 C語言到C 的公升級

c語言中的const變數 c語言中const變數是唯讀變數,有自己的儲存空間 c 中的const常量 可能分配儲存空間 當const常量為全域性,並且需要在其它檔案中使用 當使用 操作符取const常量的位址 c 中的const小結 c 中的const常量類似於巨集定義 const int c 5 ...

C到C 的公升級

c與c 的關係 1.c 繼承了所有的c特性 2.c 在c的基礎上提供了更多的語法和特性 3.c 的設計目標是執行效率與開發效率的統一 c 對c的加強 1.c 中更強調語言的 實用性 所有的變數都可以在需要使用的時候再定義 for int i 0 i 10 i c 編譯器不報錯 注意 c語言中的變數都...

c到c 的公升級

c 繼承了c的所有特性,c 在c的基礎上同時增加了許多新的語法和特性,c 的目標是實現執行效率與開發效率相統一。c 中更加強調語言的實用性,所有變數可在使用的時候再定義。例如 include int main int argc,char argv printf c d n c printf end....