{eval=Array;=+count(Array);}
謝邀,區(qū)塊鏈底層技術(shù)研發(fā)工程師一枚,攜滿(mǎn)腔熱情來(lái)怒答一發(fā)。
c語(yǔ)言是個(gè)好東西,編程語(yǔ)言中的戰(zhàn)斗機(jī),上至應(yīng)用系統(tǒng),下至操作系統(tǒng),都可以來(lái)用c語(yǔ)言操作一發(fā),可謂是用途之多,下面我就列舉以下:
大名鼎鼎的linux就是c語(yǔ)言實(shí)現(xiàn)的,而且時(shí)至今日,linus也是到處反對(duì)c++,認(rèn)為c是最好的語(yǔ)言。linux可能80%都是c語(yǔ)言實(shí)現(xiàn)的,剩下的20%可能是一些腳本和匯編語(yǔ)言實(shí)現(xiàn)的。c語(yǔ)言比較高效,也適合和設(shè)備打交道,所以要開(kāi)發(fā)個(gè)什么驅(qū)動(dòng)啊,寫(xiě)個(gè)什么底層網(wǎng)絡(luò)庫(kù)啊,c是比較適合的。
所以學(xué)了c語(yǔ)言,首先可以做做嵌入式相關(guān)的項(xiàng)目。
在要求安全性和性能的領(lǐng)域,c語(yǔ)言往往是第一的選擇,而實(shí)時(shí)通信和服務(wù)端處理則是這樣的領(lǐng)域。我們能在網(wǎng)絡(luò)上看到很多招聘中后臺(tái)選擇一些跟高級(jí)語(yǔ)言的,但是也有后臺(tái)選擇c/c++的,尤其是一些性能要求高的場(chǎng)景的項(xiàng)目。
所以學(xué)了c,可以試著做做網(wǎng)絡(luò)相關(guān),后臺(tái)相關(guān)的項(xiàng)目。
c語(yǔ)言是最經(jīng)典的語(yǔ)言,也是每個(gè)程序員必須掌握的語(yǔ)言,學(xué)好c語(yǔ)言,能對(duì)你的技術(shù)有更好的幫助,學(xué)好c語(yǔ)言,也是每個(gè)程序員要成為高手的必備條件。
做項(xiàng)目是有計(jì)劃,完成時(shí)間的這點(diǎn)就要求我們對(duì)基礎(chǔ)的東西必須掌握
1、C語(yǔ)言關(guān)鍵字,用法你得明白吧,基本的api。掌握的越好越熟練。寫(xiě)起代碼來(lái)也就更帶勁了。
2、數(shù)組指針各種用法要熟記于心靈活應(yīng)用,程序bug多少跟你對(duì)指針的熟練程度關(guān)系那是相當(dāng)大,這個(gè)搞不定項(xiàng)目我看你就別做了,還是多去看看書(shū)了。
3、算法得熟悉,雖然大部分項(xiàng)目都用不著什么牛逼的算法,但是小范圍的使用基礎(chǔ)算法還是很多的。牛逼不牛逼體現(xiàn)的都在算法上。
4、文檔會(huì)看不,做項(xiàng)目完全自己開(kāi)始從零寫(xiě)代碼的可能非常的小,都是利用一些開(kāi)源的東西改成自己想要的,所以看文檔必須會(huì)。
5、bug會(huì)跟蹤會(huì)調(diào)試不,分析查找問(wèn)題都得通過(guò)bug調(diào)試來(lái)追蹤。這個(gè)也能體現(xiàn)能不能做項(xiàng)目。上面這些都是得必須掌握的基礎(chǔ),沒(méi)有這些基礎(chǔ)做項(xiàng)目免談。
項(xiàng)目開(kāi)發(fā)代碼部分是實(shí)現(xiàn)劃分的模塊功能。
1、完整清晰的思路來(lái)保證如何實(shí)現(xiàn)我們的功能模塊,畢竟項(xiàng)目架構(gòu)師不可能去實(shí)現(xiàn)具體的模塊,這些都是碼農(nóng)們干的事情,你能獨(dú)自設(shè)計(jì)一個(gè)功能模塊嗎。
2、寫(xiě)代碼的熟練度,這個(gè)東西不好評(píng)估。只此一條,就是你一口氣寫(xiě)完一個(gè)單一的功能模塊。編譯錯(cuò)誤很少,稍許改動(dòng)就能運(yùn)行調(diào)試。這個(gè)就說(shuō)明你做項(xiàng)目至少在code上已經(jīng)達(dá)到開(kāi)發(fā)項(xiàng)目要求了。
C 語(yǔ)言很強(qiáng)大,很牛逼,可以做如下東西:
C 語(yǔ)言可以做嵌入式開(kāi)發(fā)。51 單片機(jī)、ARM 等....
C 語(yǔ)言可以做服務(wù)器開(kāi)發(fā),游戲服務(wù)器端大多都是 C/C++ 開(kāi)發(fā)的。
C 語(yǔ)言,可以寫(xiě)游戲。cocos2d-x 就是 C/C++ 寫(xiě)的。DirectX 也是。
C 語(yǔ)言還可以寫(xiě)驅(qū)動(dòng)的開(kāi)發(fā),各種硬件的驅(qū)動(dòng)都是 C /C++ 寫(xiě)的。
C 語(yǔ)言可以做視頻圖片流媒體處理。
C 語(yǔ)言不僅如此,其實(shí) C 語(yǔ)言也可以寫(xiě)界面,例如 soui 就是用 C 寫(xiě)出來(lái)的。
而且很多系統(tǒng)的底層都是用 C 寫(xiě)的。 C 語(yǔ)言學(xué)好了,真的可以干很多事情。
我也是C學(xué)習(xí)者,如果你真的是想用C來(lái)做項(xiàng)目,那是需要一段很長(zhǎng)的積累時(shí)間,首先,項(xiàng)目不是簡(jiǎn)單的一個(gè)小程序,C有得天獨(dú)厚的硬件控制優(yōu)勢(shì),要用C做項(xiàng)目,一定是底層開(kāi)發(fā),如寫(xiě)驅(qū)動(dòng),寫(xiě)芯片等等,這些是需要深入學(xué)習(xí)C編程的,而且你要熟悉PC的原理,熟悉操作系統(tǒng),如果你旨在搞底層開(kāi)發(fā),你就要有足夠的勇氣走下去,因?yàn)榈讓娱_(kāi)發(fā)需要很多知識(shí)和努力,一般,學(xué)C只是為了打基礎(chǔ),為了了解面向?qū)ο螅绻阏娴南氲讓娱_(kāi)發(fā),那就要好好加油,如果你想鞏固好C以方便以后面向?qū)ο蟮膶W(xué)習(xí),寫(xiě)寫(xiě)小型的程序是可以的,如:學(xué)生成績(jī)管理系統(tǒng),圖書(shū)館借閱系統(tǒng),其實(shí)這些都是舉一反三的,好好的寫(xiě)一個(gè),其他的都差不多……關(guān)鍵是寫(xiě)的時(shí)候要有自己的想法,敢于創(chuàng)新。
這個(gè)問(wèn)題反過(guò)來(lái)思考比較貼近生活,先確定要做什么項(xiàng)目,再考慮是不是要用c語(yǔ)言!你要做網(wǎng)站項(xiàng)目,你鼓搗c語(yǔ)言作甚?你要開(kāi)發(fā)手機(jī)app,也沒(méi)必要鼓搗c語(yǔ)言!你要開(kāi)發(fā)sql或者access項(xiàng)目,也不用考慮c語(yǔ)言了。。。那c語(yǔ)言有啥用呢?第一,考試!第二,嵌入式開(kāi)發(fā)!第三,與圖形界面無(wú)關(guān)的算法演示、patch補(bǔ)丁啥的。當(dāng)然,如果一定要用c語(yǔ)言來(lái)解決所有問(wèn)題,也只是時(shí)間問(wèn)題,毅力足夠的話(huà),放手開(kāi)干就行!
作為一名c,c++,java語(yǔ)言都研究過(guò)的小碼農(nóng)來(lái)回答您這個(gè)問(wèn)題
首先語(yǔ)言這個(gè)東西在我看來(lái)對(duì)于一些練手項(xiàng)目的話(huà)都能寫(xiě),但是如果是正經(jīng)項(xiàng)目的話(huà)就要考慮每種語(yǔ)言的優(yōu)點(diǎn)了,單純學(xué)完了c語(yǔ)言的話(huà)建議可做如下方面:
1. 系統(tǒng)的開(kāi)發(fā)和優(yōu)化
2. openkinect 也是c語(yǔ)言所開(kāi)發(fā)
3. Linux 平臺(tái)上 GTK+ 應(yīng)用程序的開(kāi)發(fā)
4. 自然語(yǔ)言處理
5.算法方面-工資也很高,市場(chǎng)需求很大
6.如果你真的學(xué)通了c建議你研究一下其他語(yǔ)言,幾多不壓身,你會(huì)發(fā)現(xiàn)其他語(yǔ)言原來(lái)如此。
現(xiàn)在很多牛逼的軟件工具都是c語(yǔ)言開(kāi)發(fā)的,比如 mysql, nginx等等 c語(yǔ)言的oop擴(kuò)展的oc現(xiàn)在是ios的主流開(kāi)發(fā)語(yǔ)言, 可以去開(kāi)發(fā)ios上面的app。
當(dāng)然作為比較底層的語(yǔ)言還可以開(kāi)發(fā)一些客戶(hù)端工具軟件等等,當(dāng)然用c開(kāi)發(fā)會(huì)比較吃力,學(xué)點(diǎn)c++, 現(xiàn)在大型web底層處理都是c++支撐
10
回答0
回答0
回答2
回答0
回答10
回答1
回答0
回答10
回答7
回答