從C過渡到C

2021-08-15 16:09:52 字數 1460 閱讀 1032

作業系統和驅動程式都是c寫的,學好c足夠了。

c++在應用層用得多,學嵌入式沒必要學

linux大神都認為c++一無是處,還學它幹嘛

我以後就做驅動開發,沒精力也沒必要學習c++

但是說,軟體這個行業是飛速發展的,只靠單一 一種語言並不能支撐整個工作生涯,而且只用單一 一種語言很快就會走進瓶頸,所以我們要開闊視野,學習多種語言,這樣的話,我們的選擇就會更多。還可以比較各種語言之間的優劣。全面發展自己的能力。

c語言的特點:

1.c語言是實踐的過程中逐步完善起來的

沒有經過深思熟慮的設計過程。c語言出現為了解決組合語言中的問題。因此也殘留了過多低階語言的特徵。

2.c語言的目標是高效

最終程式執行效率的高效,因為是為了取代彙編,因此它的效率很高,但使用麻煩,只在底層程式設計使用。

3. 面向過程的語言:以一種以過程為中心的程式設計思想

就是分析出解決問題所需的步驟,然後把函式吧這些步驟一步一步實現,使用的時候乙個乙個依次呼叫就可以了。

4.問題:軟體可重用性差,軟體可維護性差。

相對於c語言,c++重要的是物件導向程式設計思想。是一種以事物為中心的程式設計思想。

就是吧構成問題事物分成各個物件,建立物件的目的不是為了完成乙個步驟,而是為了描述某個事物在整個解決問題的步驟中的行為。

1. 直接分析使用者需求中涉及的各個實體

2. 在**中描述現實世界中的實體

3. 在**中關聯各個實體協同工作解決問題

構建的軟體能夠適應使用者需求的不斷變化

直接利用面向過程方法的優勢而避開其劣勢

c++是c語言的加強,並且完全相容c語言的特性,是一種更好的c語言。

兩者並不是對立的競爭關係。學習c++並不會影響原有的c語言。反而可以學到更加多的軟體設計方法。

問題:為什麼要為以後的學習其他語言做準備?
1. 系統一般是由多種語言寫成的

2. 系統架構的目標是擁抱使用者需求的變化

3. 系統擁有較好的移植性

4. 系統能夠方便的部署和更新

而底層**,如作業系統的修改和驅動程式的開發在現代軟體產品中佔據的比重越來越少。

c++繼承了所有的c特性

c++在c的基礎上提供了更多的語法和特性

c++的設計目的是執行效率與開發效率的同一

從C過渡到C

案例 輸出hello world include using namespace std int main int main 函式過載 函式名相同只有引數 個數或者型別 不同。命名空間 include namespace scope1 namespace scope2 int main 命名空間的作...

從C過渡到C

c plus plus c語言的超級 帶class的c語言 c 可以完全引用c c不能直接呼叫c 案例 輸出hello world 源 helloworld.cpp include using namespace std int main 編譯 g helloworld.cpp o hellowor...

從C語言過渡到C 之基本變化

說到c 和c語言的區別,大部分人都會想到物件導向和面向過程。然而這種說法並不準確。物件導向和面向過程指的是兩種不同的程式設計思想,而c 與c是兩種程式語言,難道c 就不能用於面向過程去解決問題嗎,當然可以。而物件導向的設計思想也可以用到c語言中去,我之前的文章就涉及過這方面的知識。我們這個系列就是要...