我開始了與學習C,但隨後跳下直入C++,只是因爲它支持OO並且還需要進行後續工作。但是,一些公司堅持僱用C經驗特別強的人 - 我注意到這一點尤其適用於硬件驅動程序開發公司。
8
A
回答
3
這可能只是他們沒有爲他們正在使用的平臺的C++編譯器...我個人一直使用C++優先於C.
3
C是更便攜 - 下的電流C++的標準化水平,當可移植性很重要時,它不能被使用。 C++代碼也很難被集成(以可靠和便攜的方式)到C環境中。
4
C字符串處理是非常類似於C++典型字符串代碼的。當然,我不希望我的驅動程序附近有任何C++字符串!更具體地說,在良好的現代C++中,你並不需要理解指針並在低級別處理緩衝區;但這些是設備驅動程序代碼中的基本和關鍵技能。
是的,可以用C++編寫好的驅動程序;但是C++看起來會像C一樣具有一些額外的功能。大多數C++庫在設備區沒有位置。
1
許多嵌入式系統(如微控制器,PLC等)使用C而不是C++,因爲它們不需要僅僅具有一個類,而只是一個具有一些功能的巨型循環。沒有什麼花哨的,但足以使用高級語言完成工作。由於人們比組裝更熟悉C,所以在大約98%的情況下它運作良好。
-1
我覺得原因很簡單,很多公司都想要高效的可讀代碼。 C是一門很容易理解和掌握的語言,對於許多用途來說,沒有理由通過添加OO語言使得可能但不需要的全新概念(類,多態性,繼承等)來使開發和代碼連續性複雜化。
相關問題
- 1. 爲什麼會有用C
- 2. Makefile使用C++代替g ++ - 爲什麼?
- 3. 爲什麼有些人會說「C +」而不是C++?
- 4. 什麼是替代在C + +
- 5. 什麼是用C++ RegEx替代lookbehind?
- 6. c/C++爲什麼有時會強調爲什麼有時沒有下劃線?
- 7. 爲什麼會有內存泄漏? (C)
- 8. 爲什麼有人想用strlen代替mb_strlen
- 9. C++爲什麼會拋出?
- 10. 爲什麼會有人使用!在JavaScript?
- 11. 爲什麼有人會用這個?
- 12. AssemblyAlgorithmIdAttribute:爲什麼有人會使用它?
- 13. 爲什麼這個C代碼有效?
- 14. C#什麼是設置的替代
- 15. 什麼是目標C的「stringWithContentsOfURL」替代?
- 16. C#中的替代方法是什麼#
- 17. 爲什麼這個C++代碼編譯?它有什麼作用?
- 18. 執行這部分C#代碼後會有什麼行爲?
- 19. C函數調用約定:爲什麼movl代替pushl?
- 20. 爲什麼使用this-> ObjectName代替this.ObjectName在C++中
- 21. 在C#中,爲什麼我可以使用TextWriter代替StreamWriter?
- 22. 爲什麼用'$'代替'。'?
- 23. 爲什麼有人會使用#if 1 C預處理器指令?
- 24. 爲什麼用C
- 25. 使用HttpCookie代替C#中的會話
- 26. C代碼會顯示什麼?
- 27. 任何人都知道爲什麼這個C代碼不會編譯?
- 28. 爲什麼c#沒有union?
- 29. 用C代替'with'#
- 30. 對於C#4.0中昂貴的Enum.IsDefined(),有什麼替代方法?
http://stackoverflow.com/questions/649789/why-artificially-limit-your-code-to-c – 2010-02-24 15:07:14
爲什麼有人會用刀而不是食物處理器? – 2010-02-24 15:07:24
@尼爾·巴特沃斯很酷,謝謝。 – 2010-02-24 15:08:53