C語言是面向過程的,而C++是面向對象的
C和C++的區別:
C是一個結構化語言,它的重點在于算法和數據結構。C程序的設計首要考慮的是如何通過一個過程,對輸入(或環境條件)進行運算處理得到輸出(或實現過程(事務)控制)。
C++,首要考慮的是如何構造一個對象模型,讓這個模型能夠契合與之對應的問題域,這樣就可以通過獲取對象的狀態信息得到輸出或實現過程(事務)控制。 所以C與C++的最大區別在于它們的用于解決問題的思想方法不一樣。之所以說C++比C更先進,是因為“ 設計這個概念已經被融入到C++之中 ”。
C與C++的最大區別:在于它們的用于解決問題的思想方法不一樣。之所以說C++比C更先進,是因為“ 設計這個概念已經被融入到C++之中 ”,而就語言本身而言,在C中更多的是算法的概念。那么是不是C就不重要了,錯!算法是程序設計的基礎,好的設計如果沒有好的算法,一樣不行。而且,“C加上好的設計”也能寫出非常好的東西。
?
聲明和定義是完全同的概念,聲明是告訴編譯器“這個函數或者變量可以在哪找到,它的模樣像什么”。而定義則是告訴編譯器,“在這里建立變量或函數”,并且為它們分配內存空間。
?
函數聲明與定義:
?
?
函數的聲明如:int Add(int, int);函數聲明就是給函數取名并指定函數的參數類型,返回值類型。值得注意的是,在C語言中,有一點跟C++不同,對于帶空參數表的函數如:int func();在C中代表可以帶任意參數(任意類型,任意數量),而在C++中代表不帶任何參數。
?
?
函數的定義如:int Add(int a, int b){} 函數定義看起來跟函數聲明很像,但是它有函數體,如果函數體中使用了參數,就必須為參數命名,這里大括號代替了分號的作用。
?
變量的聲明如:extern int i; 在變量定義前加extern關鍵字表示聲明一個變量但不定義它,這對函數同樣有效,如:extern int Add(int a, int b);因為沒有函數體,編譯器必會把它視作聲明而不是定義,extern關鍵字對于函數來說是多余的,可選的。
變量的定義如:int i;如果在此之前沒有對i的聲明,那么這里既是對它的聲明也是對它的定義,編譯器會為其分配對應的內存。
真正重要的東西,用眼睛是看不見的。
學習編程并不難 有喜歡C語言或者對C語言有興趣的朋友加一下我的C語言交流群815393895,謝謝大家的支持
?