c語言強項
㈠ 你好,我也是c語言愛好者,也想轉行做這個,想問下,C學成什麼樣可以
如果你現在工作比較穩定,就別朝IT這個行業跳了。加班加到死,全天都是高度緊張的狀態。真心話工作是為了生活,但IT業的強度已經是在破壞生活了,太苦了。體力勞動者下了班可以喝上小酒呼呼的睡個美覺,IT這行你下了班腦子里還是代碼和項目,還要不停的學習新技術,還要為了滿足客戶的需求不斷的修改你的設計。不要因為興趣而跳進這個坑裡來!
特別如果你的年齡超過26,又不是計算機專業學生就更不能向這裡面跳了。用魔獸世界BOSS伊利丹的話說:你這是自尋死路!!!
最後說一下C學成什麼可以上班這個問題。C的強項就是和底層硬體打交道,單片機嵌入式,但這些必須掌握一些硬體知識、通訊協議等。如果只是簡單的學了C,想找工作難度很大,因為一般做信息化(MIS、ERP)的公司都會要ASP、java、C#、VB#、PHP這些的,而且還要會基本的資料庫操作的(Mysql、Sql、Orcl等)。而做硬體開發的公司是招C語言的,但要求更高了,一般要C++的基礎對API、硬體介面都有要求。
最後:別隨便跳IT的坑。如果你想看見白天、如果你想正常上下班、正常休息。(其實現在IT業的工資不高,付出和收入不成正比)
㈡ 我想問一下C語言主要學哪些東西,會學到設計網站嗎
C語言的強項不是做網站,而是系統編程,嵌入式等待。
要學網站,就應該去學PHP、J2EE、.Net。
㈢ C語言重要嗎
對於理工 科學生來說,這個答案可能很簡單,因為這是一門必修課。而對於程序員來說選擇一門編程語言,在某種程度上,對職業生涯的發展會產生重大的影響,所以必須慎 之又慎。那麼,為什麼要選擇一門誕生了將近半個世紀的語言?本文不是老生常談的廢話,如:」C 語言是編程的基礎」、」學好 C 語言,走遍天下都不怕」等等,本文力爭詳盡而又有理的回答這個問題,首先咱們先了解一下何為 『c』 語言
C 語言
C 語言是由美國 AT&T 貝爾實驗室的研究員 Dennis Ritchie 在 B 語言的基礎上,最初作為改造 Unix 操作系統的開發語言,並伴隨著 Unix 操作系統興起而流行,後來,隨著微型計算機的發展,C 開始被移植到其他操作系統平台上,成為獨立的程序設計語言。
為操作系統而生的標簽註定了 C 不可能平庸,實話實說,C 是一門很難學習和使用的編程語言,沒有編譯原理、操作系統和計算機體系結構扎實的基礎知識,根本不可能把 C 學的明白、用的順手。C 作為一門工程實用性極強的語言,提供了對操作系統和內存的精準控制,高性能的運行時環境,源碼級的跨平台編譯等優點,才是我們必須學習和使用 C 的理由。
同時,幸運的是 C 也是個有趣的東西,對編程的認知越深,就會越覺得有意思,我簡單列舉一些 C 的優點:
1、結構化設計語言,語法清晰、結構簡單,模塊化使得程序的各個部分除了必要的信息交流外彼此獨立,便於開發、調試
2、運算符多,把括弧、賦值、強制類型轉換等都作為運算符處理,靈活使用各種運算符可以實現在其它高級語言中難以實現的運算。
3、數據結構豐富,能實現各種復雜的數據類型的運算,引入指針、結構體概念使程序效率更高。
4、為操作系統而生,可以像匯編語言一樣對位、位元組和地址進行操作,允許直接訪問物理地址對硬體進行操作,把高級語言的基本結構和語句與低級語言的實用性結合起來。
5、程序執行效率高,一般比匯編程序生成的目標代碼效率低 10%~20%。
6、可移植性好,C 語言抽象了針對 CPU 編程的細節,能廣泛應用於針對大型操作系統和系統軟體的編寫。
7、具備強大的繪圖功能,和 C++ 一樣也可以寫出很優雅的二維、三維圖形和動畫。
有人說,C 是 C++ 的子集,C 能做到的事,C++ 一樣能做到,並且還可以做的更好,如:三大面向對象特性、GUI 編程,誠然,我承認在 GUI 編程領域 C++ 占據著絕對的統治地位,至今無人能撼動。但真的有必要用 C++ 來替代 C 完成工作嗎?很多時候 C++ 解決問題的思路真的比 C 更先進嗎?
C 和 C++ 比較
1、隱式操作:C 簡單直接、結構清晰,每行代碼都能清楚的被反匯編成相應的語句,系統會嚴格按照你的代碼去執行。而 C++ 則不盡然,簡單的語句也說不清楚究竟有多少次構造和拷貝,這樣編寫底層代碼是完全不行的,底層需要精準和嚴格的控制。
2、語言介面:現代軟體工程項目的開發,不但對性能有很高要求,對於語言介面的對接能力也有很高要求,因為偌大的一個項目很少僅使用一種語言來進行開發,對於 底層,C++ 對內存和硬體的控制不如 C 簡潔精準;對於很多動態語言和中間件,如:PHP、Python 和 Apache、Redis,都受了 C 的很大影響,甚至就是 C 開發出來的東西,對接起來非常方便。沒錯兒,其實 C++ 採用迂迴的方式也能對接的,但是,遠遠不如 C 方便,開發和維護成本非常高。
硬體層:
1、分配內存:系統加電後運行,經過匯編初始化棧,然後再跳轉到 C 語言的 start_init() 函數去,這時候內存分配機制都還沒有建立,C++ 如何定義類?如何實例化對象?
2、標准庫依賴:C 的所有特性都可以不依賴任何庫運行,如有必要,可以按照特定需求自己編寫庫。
3、處理器兼容:C++ 的類是依賴基地址+偏移地址的定址方式,很多微處理器只有簡單的給定地址定址,不支持一條語句實現 base + offset 的定址機制,很多 C++ 代碼編譯出來需要更多的指令來運算地址,導致性能下降了太多。
4、應用層:C++ 在做應用層尤其是 GUI 編程,這是 C++ 的傳統強項,我一直堅持 C 也能優雅的做出圖像和動畫,但開發效率確實較 C++ 低很多,最近有個很火的 RUST 語言,號稱是未來唯一能取代 C++ 的編程語言,感興趣的同學可以多了解下。
由上可知,操作系統、編譯原理、數據結構與演算法等等基礎知識,是深入理解、掌握和靈活運用 C 的重要前提,現階段程序員職業生涯超過一半的熱門方向直接或間接與 C 有關,我想,學好 C 的重要性也就不言而喻了。
㈣ C語言主要用在哪些方面
1、上層開發
其實用 C 語言做上層應用程序開發和寫界面不是明智的選擇,比如 Windows 上面,畫個窗口,寫個消息處理函數,麻煩的要死。
做上層應用程序開發,其實大家都在用:
Windows: C++,MFC/QT
Android: Java
IOS: ObjecTIve-c / swift
Linux: C\C++,GTK+/ QT(Linux 圖形界面應用程序)
2、底層開發
C 語言主要的用途還是底層編程,例如系統軟體:編譯器,JVM,驅動,操作系統內核,還有各種嵌入式軟體,固件。
下面列舉了C語言一些常見的領域。
(1)應用軟體。Linux操作系統中的應用軟體都是使用C語言編寫的,因此這樣的應用軟體安全性非常高。
(2)對性能要求嚴格的領域。一般對性能有嚴格要求的地方都是用C語言編寫的,比如網路程序的底層和網路伺服器端底層、地圖查詢等。
(3)系統軟體和圖形處理。C語言具有很強的繪圖能力和可移植性,並且具備很強的數據處理能力,可以用來編寫系統軟體、製作動畫、繪制二維圖形和三維圖形等。
(4)數字計算。相對於其他編程語言,C語言是數字計算能力超強的高級語言。
(5)嵌入式設備開發。手機、PDA等時尚消費類電子產品相信大家都不陌生,其內部的應用軟體、游戲等很多都是採用C語言進行嵌入式開發的。
(6)游戲軟體開發。游戲大家更不陌生,很多人就是由玩游戲而熟悉了計算機。利用C語言可以開發很多游戲,比如推箱子、貪吃蛇等。
學習C語言,就來北京尚學堂!
㈤ c語言用來做什麼的
可以用來開發網站、Android App和企業級應用軟體; C#是微軟推出的用於對抗Java的編程語言,主要用於Windows開發和網站開發; PHP、JavaScript 都是用來開發網站的;
㈥ 計算機語言排行榜C的用戶比C++多 但是我的有10年編程經驗的老師 卻說C++比C語言好 為什麼
C++比C好是因為有以下幾個原因:
C++是面向對象的語言。現在幾乎大部分的編程語言都提供了面向對象的方法,事實也證明面向對象編程可以極大的提高開發效率,同時比起面向過程的語言,更容易搭建框架,編寫可復用的軟體。
C++是從C之上改進來的。對C的很多方面都有了改進,如命名問題、有嚴格的類型檢查等,同時C++向下兼容C的幾乎所有語法、庫函數等,C編寫的軟體可以直接用C++重新編譯運行,不用改寫。
C++比C有更好的標准庫,提供了vector、string等標准容器、及其演算法,又可以對運算符重載,還有提供了模板功能,可以進行泛型編程。
因此,C++向上可以快速開發軟體,向下可以像C一般開發底層驅動。
但是也正因為以上的原因造成了C的用戶比C++多一倍,簡單說下原因:
C++不是徹底的面向對象語言,即支持面向過程,又支持面向對象。比起C++,java更加安全,更加徹底,所以在面向對象方面用java比較多。其次在底層開發上,比起面向對象的語言,用面向過程的C運行效率更加高效。以linus為代表的反對者認為,在底層開發中,類模型看似可復用,易於應對變化(需求變化等),但實際會將系統攪得一團亂。當然還是很多人不這樣認為。不過也是這種原因,底層開發更喜歡用C。
C++功能過多。C++不僅包括了C的幾乎全部功能,同時提供了現代面向對象理論。同時又提供了泛型編程。同時標准庫,第三方庫,看似方便,但是功能太多,同時分歧太大,不利於語言的統一、與跨平台移植開發。正是這些原因,使得語言過於復雜。要知道越是復雜的東西就越是不利於初學者學習,而且C++標准還在不斷更新,添加更多的功能,因此不易於新手學習,自然用戶就少了。其次,過於復雜,也使得編譯器難以開發,雖然有GCC、VC++等編譯器,但說到底誰都沒有完全將符合標準的編譯器開發出來,不同編譯器覆蓋了不同的功能。
C++支持比較廣泛,可以說什麼方面都可以用C++開發,但都不能說是C++的專用領域,比如C專於操作系統,java專於web平台等。C++雖然可以說什麼都是,但是也可以說什麼都不是。
C++比不上C的用戶多有一些歷史原因,也有本身的設計問題,但不能否認C++是一門出色的語言,而且隨著C++的不斷改進,也顯示出C++在某些方面比其他語言更具優勢,用戶也在逐漸增加,但是統治地位的java和C仍是主要對象。當然還有競爭對手objective-C崛起使得用戶使用數量排名也忽上忽下,不如前2者穩定。
㈦ 為什麼語言排行榜上C一直都是排名第一二啊C++這幾年為什麼拍後了啊原則上說C++不就是升級版C嘛
排名前三的 C和JAVA經常換,C++萬年的小三。
UNIX 是用C寫的,嵌入式開發,硬體方面的,C是強項,除了匯編,C語言的效率幾乎是最高的,它能直接操作底層,既是底層語言又是高級語言,而且比較靈活,很多語法都靠程序員自己去控制危險。
C++ 更多的被用在大型高性能的系統中,特別在幾十萬行的大型代碼中才能看出它牛B的優勢,面向對象的語言,繼承,多態,STL等賦予它這一優勢。而 Objective-C 被使用在移動應用開發領域,其實就是開發IOS的蘋果自己用的語言。
前五名, C 之後的JAVA, C++, Objective-C, C# 全部都是C系語言,都是C的變種
㈧ c#語言的用處在哪實用性如何
不管哪一種語言都有前途,包括古老的語言, C#的優勢就在開發快,因為它幾乎不需要考慮內存管理,還有優秀的代碼特性 C++的內存需要自行管理,一不小心就陷入內存泄露之類的問題;學習C#可以參考李天生的C# 2015視頻教程而且C++開發周期相對慢 另外,現在C#很大一部分都是用於開發網站,就是Asp.net, 用什麼語言,看各個公司的評估需要,C#之所以流行還有一個原因就是上手快,微軟提供了龐大的類庫和優秀的開發工具VisualStudio...
㈨ 有c語言強項的人嘛,求幫寫個程序,,,,
你可以去程序網論壇去看看,或者豬八戒網也可以
㈩ C語言的重要性
第一,學習C有助於更好的理解C++,Java,C#,Perl以及其他基於C的特性的語言。第一開始就學習其他語言的程序員往往不能很好的掌握繼承自C語言的基本特性。
第二,目前仍有許多C程序,我們需要讀懂並維護這些代碼。
第三,C語言仍廣泛應用於新軟體的開發,特別是在內存或處理能力受限的情況下以及需要使用C語言簡單特性的地方。
