{eval=Array;=+count(Array);}
答主有幸,大學(xué)正好學(xué)過(guò)C語(yǔ)言,現(xiàn)在從事的也正好是C語(yǔ)言相關(guān)的工作。我來(lái)回答你這個(gè)問(wèn)題。
我認(rèn)為,大學(xué)C語(yǔ)言課程不用Linux的gcc編譯器,主要原因有以下幾個(gè)方面。
我上學(xué)那會(huì)兒,使用的還是vc6.0+,一款很古老的IDE,一個(gè)框?qū)懘a,上面點(diǎn)一下是調(diào)試,再點(diǎn)一下是運(yùn)行,非常傻瓜的操作,簡(jiǎn)單明了,上手十分簡(jiǎn)單。
一切都是以圖形化的界面操作,直觀清晰。無(wú)需去記gcc的復(fù)雜編譯命令,不必了解從代碼編譯成為二進(jìn)制字節(jié)碼經(jīng)歷了哪四個(gè)階段。更不用去掌握Makefile如何去編寫??梢园迅嗟淖⒁饬性贑語(yǔ)言本身。而不必花更多的精力去學(xué)習(xí)C語(yǔ)言以外的東西(如果是Linux+gcc的話,至少需要掌握簡(jiǎn)單的Linux操作命令,以及gcc編譯,gdb調(diào)試等,這些東西學(xué)習(xí)成本不比學(xué)習(xí)C語(yǔ)言低,在大學(xué)有限的課程里,沒(méi)有那么多的時(shí)間去學(xué)習(xí)這些)。
我們學(xué)C語(yǔ)言考試時(shí),期末考試直接是省二級(jí)C語(yǔ)言考試,后面又自己考了國(guó)家級(jí)C語(yǔ)言二級(jí)。不管是省二級(jí)還是國(guó)家二級(jí),機(jī)試部分的編程環(huán)境,就是VC(當(dāng)時(shí)的環(huán)境,現(xiàn)在不知道有沒(méi)有改)。
因此,在平時(shí)教授課程的過(guò)程中,就讓學(xué)生習(xí)慣這種開發(fā)環(huán)境,在考試的時(shí)候,就無(wú)需有重新熟悉開發(fā)環(huán)境的成本,可以快速進(jìn)入狀態(tài)。試想一下,如果平時(shí)上課使用VS,結(jié)果到了考試甩給你一套Linux環(huán)境,估計(jì)直接就懵逼了。
大學(xué)里教C語(yǔ)言的老師大部分都是一些年齡比較大的(年輕人比較少),在他們執(zhí)教數(shù)十年的生涯里,用的一直是VS系,很多老師甚至都很少接觸Linux。在他們腦海中,根深蒂固的就是認(rèn)為C語(yǔ)言就是應(yīng)該這么學(xué)的。
我之前曾經(jīng)看過(guò)侯捷大神(就是翻譯《Effectice C++》的那位大佬)出的一個(gè)講C++STL源碼的視頻,用的居然也是VC6.0,實(shí)在是有些不可思議。
因此,大學(xué)C語(yǔ)言課程不用Linux的gcc編譯器,主要是出于以上三個(gè)方便的考慮。希望我的回答能幫到你。
有簡(jiǎn)單的為啥要用復(fù)雜的!有一鍵搞定的,為啥要在編譯上搞那么復(fù)雜。優(yōu)秀的產(chǎn)品不是越來(lái)越簡(jiǎn)單才好嗎?學(xué)個(gè)開車,還得要學(xué)會(huì)修車嗎?微軟為啥厲害,就是把產(chǎn)品做的入門門檻底,讓用戶直接關(guān)注業(yè)務(wù),才擁有了大量用戶。
先學(xué)linux安裝,再學(xué)linux命令,再學(xué)gcc,gdb,make,兩個(gè)學(xué)期沒(méi)了。
如果只是想用gcc,完全可以用codeblocks,mingw。
Linux C 體現(xiàn)的不是單單是語(yǔ)言本身,包括很多模塊,在Linux下做C開發(fā)或教學(xué)需要很全面的系統(tǒng)工程能力,如gcc編譯項(xiàng)、makefile,gdb、內(nèi)存泄露工具等等,而VC++IDE涵蓋這些,相對(duì)簡(jiǎn)單。
1、大多老師自己都不懂。
2、用VC教學(xué)更簡(jiǎn)單,對(duì)菜鳥更友好。
主要是圖省事,因?yàn)閂S把這些幕后工作都做好了,不需要配置環(huán)境,直接寫代碼就可以編譯、調(diào)試了。
初學(xué)編程語(yǔ)言,如果沒(méi)有友好易用的IDE,編譯環(huán)境先來(lái)一頓猛操作,那就喧賓奪主,澆滅學(xué)習(xí)熱情。
你要明白一點(diǎn),你學(xué)編程不是在學(xué)工具,你是在學(xué)算法,c的精髓在于指針和寄存器,至于用什么操作系統(tǒng)運(yùn)行,那都不重要,重要的是你的CPU設(shè)計(jì)。不想關(guān)心硬件,去學(xué)別的語(yǔ)言吧
0
回答0
回答10
回答0
回答0
回答10
回答0
回答10
回答0
回答0
回答