c:面向過程,語法太麻煩c#:面向?qū)ο螅ǜ鷍ava很像如果你對(duì)java了解估計(jì)你就會(huì)明白c&c#之間的區(qū)別了),是ms.netframework的主力之一,它的代碼運(yùn)行是安全的,里面沒有指針,像java一樣有垃圾回收機(jī)制。語法基本沒有區(qū)別,個(gè)人感覺首先c#不必對(duì)指針進(jìn)行太多的研究,然后可遺址性等,其它的區(qū)別相當(dāng)大??梢哉f不是一個(gè)方向的。開發(fā)環(huán)境跟開發(fā)語言也是兩個(gè)不同的概念學(xué)習(xí)c#并不必須有c語言的基礎(chǔ),不過,如果你學(xué)過c語言,那會(huì)事半功倍的,因?yàn)樗麄冎g有很多語法是一樣的。作為初學(xué)者,并沒有必要先去學(xué)習(xí)c語言,你只需要有c#的完整的教程就行了。舉個(gè)簡單的例子,你想學(xué)開高檔的轎車并不需要先去學(xué)習(xí)開低檔的面包車。但如果你已經(jīng)會(huì)開面包車的話,那么學(xué)開轎車就一定會(huì)容易一些了,因?yàn)樗麄冇泻芏嘞嗤牡胤?。C語言:C語言是國際上廣泛流行的、很有發(fā)展前途的計(jì)算機(jī)高級(jí)語言。它適合作為系統(tǒng)描述語言,即可用來編寫系統(tǒng)軟件,也可用來編寫應(yīng)用軟件。早期的操作系統(tǒng)等系統(tǒng)軟件主要是用匯編語言編寫的(包括UNIX操作系統(tǒng)在內(nèi))。由于匯編語言依賴于計(jì)算機(jī)硬件,程序的可讀性和可移植性都比較差。為了提高可讀性和可移植性,最好改用高級(jí)語言,但一般的高級(jí)語言難以實(shí)現(xiàn)匯編語言的某些功能(匯編語言可以直接對(duì)硬件進(jìn)行操作),例如:對(duì)內(nèi)存地址的操作、位操作等)。人們?cè)O(shè)想能否找到一種既具有一般高級(jí)語言特性,又具有低級(jí)語言特性的語言,集它們的優(yōu)點(diǎn)于一身。于是,C語言就在這種情況下應(yīng)運(yùn)而生了。C語言是在B語言的基礎(chǔ)上發(fā)展起來的,它的根源可以追溯到ALGOL60。1960年出現(xiàn)的ALGOL60是一種面向問題的高級(jí)語言,它離硬件比較遠(yuǎn),不宜用來編寫系統(tǒng)程序。1963年英國的劍橋大學(xué)推出了CPL(CombinedProgram-mingLanguage)語言。CPL語言在ALGOL60的基礎(chǔ)上接近了硬件一些,但規(guī)模比較大,難以實(shí)現(xiàn)。1967年英國劍橋大學(xué)的MatinRichards對(duì)CPL語言作了簡化,推出了BCPL(BasicCombinedProgrammingLanguage)語言。1970年美國貝爾實(shí)驗(yàn)室的KenThompson以BCPL語言為基礎(chǔ),又作了進(jìn)一步簡化,設(shè)計(jì)出了很簡單的而且很接近硬件的B語言(取BCPL的第一個(gè)字母),并用B語言寫第一個(gè)UNIX操作系統(tǒng),在PDP-7上實(shí)現(xiàn)。1971年在PDP-11/20上實(shí)現(xiàn)了B語言,并寫了UNIX操作系統(tǒng)。但B語言過于簡單,功能有限。1972年至1973年間,貝爾實(shí)驗(yàn)室的D.M.Ritchie在B語言的基礎(chǔ)上設(shè)計(jì)出了C語言(取BCPL的第二個(gè)字母)。C語言既保持了BCPL和B語言的優(yōu)點(diǎn)(精練、接近硬件),又克服了它們的缺點(diǎn)(過于簡單、數(shù)據(jù)無類型等)。最初的C語言只是為描述和實(shí)現(xiàn)UNIX操作系統(tǒng)提供一種工作語言而設(shè)計(jì)的。1973年,K.Thom-pson和D.M.ritchie兩人合作把UNIX的90%以上用C改寫(UNIX第5版。原來的UNIX操作系統(tǒng)是1969年由美國的貝爾實(shí)驗(yàn)室的K.Thompson和D.M.Ritchie開發(fā)成功的,是用匯編語言寫的)。后來,C語言多次作了改進(jìn),但主要還是在貝爾實(shí)驗(yàn)室內(nèi)部使用。直到1-975年UNIX第6版公布后,C語言的突出優(yōu)點(diǎn)才引起人們普遍注意。1977年出現(xiàn)了不依賴于具體機(jī)器的C語言編譯文本《可移植C語言編譯程序》,使C移植到其它機(jī)器時(shí)所做的工作大大簡化了,這也推動(dòng)了UNIX操作系統(tǒng)迅速地在各種機(jī)器上實(shí)現(xiàn)。例如,VAX,ATT等計(jì)算機(jī)系統(tǒng)都相繼開發(fā)了UNIX。隨著UNIX的日益廣泛使用,C語言也迅速得到推廣。C語言和UNIX可以說是一對(duì)孿生兄弟,在發(fā)展過程中相輔相成。1978年以后,C語言已先后移植到大、中、小、微型機(jī)上,已獨(dú)立于UNIX和PDP了?,F(xiàn)在C語言已風(fēng)靡全世界,成為世界上應(yīng)用最廣泛的幾種計(jì)算機(jī)語言之一。以1978年發(fā)表的UNIX第7版中的C編譯程序?yàn)榛A(chǔ),BrianW.Kernighan和DennisM.Ritchie(合稱KR)合著了影響深遠(yuǎn)了名著《TheCProgrammingLan-guage》,這本書中介紹的C語言成為后來廣泛使用的C語言版本的基礎(chǔ),它被稱為標(biāo)準(zhǔn)C。1983年,美國國家標(biāo)準(zhǔn)化協(xié)會(huì)(ANSI)根據(jù)C語言問世以來各種版本對(duì)C的發(fā)展和擴(kuò)充,制定了新的標(biāo)準(zhǔn),稱為ANSIC。ANSIC比原來的標(biāo)準(zhǔn)C有了很大的發(fā)展。KR在1988年修改了他們的經(jīng)典著作《TheCProgra-mmingLanguage》,按照ANSIC的標(biāo)準(zhǔn)重新寫了該書。1987年,ANSIC又公布了新標(biāo)準(zhǔn)--87ANSIC。目前流行的C編譯系統(tǒng)都是以它為基礎(chǔ)的。C#:C#是Microsoft公司設(shè)計(jì)的一種編程語言。它松散地基于C/C++,并且有很多方面和Java類似。Microsoft是這樣描述C#的:“C#是從C和C++派生來的一種簡單、現(xiàn)代、面向?qū)ο蠛皖愋桶踩木幊陶Z言。C#(讀做‘Csharp’)主要是從C/C++編程語言家族移植過來的,C和C++的程序員會(huì)馬上熟悉它。C#試圖結(jié)合VisualBasic的快速開發(fā)能力和C++的強(qiáng)大靈活的能力?!备剑阂粋€(gè)簡單的C#程序是怎樣的?可以是這樣:classCApplication{publicstaticvoidMain(){System.Console.Write(“Hello,new.NETworld!”);}}(你不能將Main()作為全局函數(shù)——C#沒有全局函數(shù))C#是面向?qū)ο蟮膯?是的,C#像Java和C++一樣,是一個(gè)面向?qū)ο蟮恼Z言。C#有自己的類庫嗎?不,就像所有的.NET語言(VB.Net,JScript.Net)一樣,C#訪問.NET類庫,C#沒有自己的類庫。C#提供什么標(biāo)準(zhǔn)類型?C#支持的基本類型和C++很相似,包括int,long,float,double,char,string,arrays,structs和classes。然而,不要假設(shè)太多,名字可能很形似,但是一些細(xì)節(jié)不相同。例如C#中的long是64位的,而C++的long取決于平臺(tái),32位的平臺(tái)上是32位的,64位的平臺(tái)上是64位的。class和struct在C++中幾乎完全一樣,但在C#中并不是這樣的。
創(chuàng)新互聯(lián)公司網(wǎng)絡(luò)公司擁有10年的成都網(wǎng)站開發(fā)建設(shè)經(jīng)驗(yàn),成百上千家客戶的共同信賴。提供做網(wǎng)站、網(wǎng)站設(shè)計(jì)、網(wǎng)站開發(fā)、網(wǎng)站定制、賣友情鏈接、建網(wǎng)站、網(wǎng)站搭建、響應(yīng)式網(wǎng)站開發(fā)、網(wǎng)頁設(shè)計(jì)師打造企業(yè)風(fēng)格,提供周到的售前咨詢和貼心的售后服務(wù)
C++適合本地程序的開發(fā).
Go語言適合網(wǎng)絡(luò)程序和本地程序的開發(fā).
相對(duì)于C++Go的優(yōu)點(diǎn):
垃圾回收
語意明確
格式統(tǒng)一
缺點(diǎn):
效率目前沒有C++高,但對(duì)于桌面程序而言,效率問題不大,因?yàn)橛布呀?jīng)很快了.
C++是目前的主流語言,相信會(huì)和C一樣成為經(jīng)典.
成為經(jīng)典的意思就是:學(xué)它的人能拿一份不錯(cuò)的工資,但也僅僅是不錯(cuò)而己.
將來的網(wǎng)絡(luò)的世界,Go發(fā)熱的機(jī)會(huì)很大,認(rèn)為其前途看好.
Go的開發(fā)者包括Unix的創(chuàng)始人和C語言的創(chuàng)始人等,都是一代黑客之首,相信會(huì)做得很好.
沒有語言是垃圾,語言是工具,關(guān)鍵在于使用者。
1:go與c語言相比,go有垃圾回收,不會(huì)造成內(nèi)存泄露問題,go的語法簡潔優(yōu)美,同樣的c++100行代碼go大概50行可以做到,go的目標(biāo)是能做C++能做的事,雖然目前可能不太實(shí)際
2:go的并行機(jī)制并不是一般的線程,通過channel和goroutine來實(shí)現(xiàn),比線程還要輕量級(jí)很多,所以go適合高并發(fā)的服務(wù)器端
3:go是系統(tǒng)級(jí)別的語言,相當(dāng)于c語言,java c#都是算比較高級(jí)的語言,這個(gè)不太好比,效率的話目前確實(shí)是要高一些,而且不需要外部依賴,所以go還是很強(qiáng)大的