C語言面向過程編程的語言;C++面向對象編程的語言。
兩者有本質的區別,其實是完全不同的兩種語言,只不過C++兼容C語言而已。
其中C++則一般看作是對C語言的擴展。因為C語言沒有面向對象的語法結構,而當時業界又迫切需要面向對象的編程特性,所以貝爾實驗室的開發者就為C語言添加了面向對象的結構。現在C++已經不只是C語言的擴展了,它已經完全可以被看作一種新的編程語言。雖然C語言的特性以及庫函數仍然被C++支持,不過C++擁有自己的獨立的類庫體系,功能相當強大。
C/C++的優點在於與底層比較接近,可以控制的粒度更加精細,是開發系統級應用的最佳選擇。關於跨平台,C/C++也是很好的語言,因為所有平台都支持,不同的是,不同平台支持的實現不同,類庫不同,要編寫跨平台的程序,需要選擇跨平台的類庫,如標準類庫,如果標準類庫的支持不夠也只需要附加編寫一個跨平台的支持類庫。