近期在學習c#編程基礎,而之前有了解過c語言,這不禁讓我疑惑:c語言與c++、c#有什么區別呢?
經過查詢資料,我總結出他們之間的不同:
C/C++/C#准確的說,是三種語言。
C語言既具有高級語言的特點,又具有匯編語言的特點。C面向過程,開發非托管程序,編譯成exe是二進制可執行文件,不可跨平台。C語言的源代碼基本上可以非常容易地對應到匯編代碼,而且可以不需要什么運行時環境的支持。C的特點,簡單容易編譯,靈活貼近底層。它可以作為工作系統設計語言,編寫系統應用程序,也可以作為應用程序設計語言,編寫不依賴計算機硬件的應用程序。因此,它的應用范圍廣泛,不僅僅是在軟件開發上,而且各類科研都需要用到C語言,具體應用比如單片機以及嵌入式系統開發。
C++它是一種使用非常廣泛的計算機編程語言。C++面向對象,開發托管和非托管程序,編譯成exe是二進制可執行文件,不可跨平台。C++是一種靜態數據類型檢查的,支持多重編程范式的通用程序設計語言。它支持過程化程序設計、數據抽象、面向對象程序設計、制作圖標等等泛型程序設計等多種程序設計風格。
C#是微軟公司發布的一種面向對象的、運行於.NETFramework之上的高級程序設計語言。C#面向對象,開發托管程序,編譯成exe是中間語言,需要在。C#的特點就是:抽象層次高且基本只有一種(面向對象的),運行時支持豐富(垃圾回收等),類庫豐富。所以它就是好學,易用,同時兼顧運行效率,盡量優化。說起這個,並不是說越高級的語言就越慢,運行時性能跟很多東西有關。NET平台上進行二次動態編譯,之后才能執行,可跨平台。C#看起來與Java有着驚人的相似;它包括了諸如單一繼承、接口、與Java幾乎同樣的語法和編譯成中間代碼再運行的過程。但是C#與Java有着明顯的不同,它借鑒了Delphi的一個特點,與COM(組件對象模型)是直接集成的,而且它是微軟公司.NETwindows網絡框架的主角。