Ⅰ c語言相關的幾個問題
這些人回答的都很好,你仔細仔細再仔細的看下吧
回答者: dixnuits - 大魔法師 八級 2009-5-9 21:49
1.不過時,不會過時,如果過時了其他語言也過時了,c語言是基礎,其他很多語言都是基於c語言開發的
2.肯定合適
3.c是面向過程的,c++是面向對象的。
回答者: znzhang - 門吏 三級 2009-5-9 21:50
1.沒有。不會。除非人們不再用計算機編程。只要還在用計算機,就會有人用C語言編程的,雖然現在大部分人認為面向對象的JAVA或者其它的比C語言容易上手的,可是如果你學過了C語言,再去學其它的軟體,就會發現有了C語言的基礎,學什麼都很簡單的。但是如果你先學了其它的編程語言,再學C語言,發現C語言還是很基礎的,它比一般的匯編要容易懂些,比面向對象的又相對簡單,屬於介面類型、承上啟下,是不可多得的語言。
2.適合。現在大學里依然開的是C語言,用的依然是譚浩強的《C程序設計》,況且現在的二級還是以C語言作為考試內容。想要學習好語言,必需從基礎的開始學起,所以從最基本的C語言開始是最適合不過了。不過要想學好它,必需要有耐心才行。
3. C是面向過程的程序設計語言。C++是面向對象的程序設計語言,不過C++語言保持了對C語言的兼容,也就說是在C++程序可以不用修改的插入C語言代碼。不過最開始還是C語言適合入門。
回答者: 小馬232 - 大魔法師 九級 2009-5-9 21:54
首先聲明下 我也在學C語言 從C中感到樂趣 就像現在在網路知道回答問題 並不是為了那麼點分數,我也要看題目,一旦遇到自己會作出來的,絕對不會再做,看到模稜兩可的會拿出來做做,現在越來越對C感興趣,下面回答你的問題,聲明只是個人建議
1.C語言永遠不會過時,它是所有編程的基礎,著種演算法,可以變成很多的程序,但是有一定的局限性,所有有了C++
2.完全可以的,C語言是基礎,學好了C,學其他的語言就簡單了,不過要有很大的耐心的,因為做程序設計的很累的
3.C是演算法著重過程,而c++是面向對象的,兩者不沖突,沒有C也可以學C++,c可以編才程序c++也可以編
回答者: chenlg1102 - 初入江湖 二級 2009-5-9 21:57
1.c語言是最為基礎的語言,可以說永遠不會過時,而且現在的應用面非常之廣,c語言在驅動,硬體方面有著不可動搖的地位.作為一個程序員,你可以不會Java,C#,但不可以不會C.
2.看看現在大學安排的課程就知道了,C語言基本都是第一學期就開的
3.C是一個結構化語言,如譚老爺子所說:它的重點在於演算法和數據結構。C程序的設計首要考慮的是如何通過一個過程,對輸入(或環境條件)進行運算處理得到輸出(或實現過程(事務)控制),而對於C++,首要考慮的是如何構造一個對象模型,讓這個模型能夠契合與之對應的問題域,這樣就可以通過獲取對象的狀態信息得到輸出或實現過程(事務)控制。
所以C與C++的最大區別在於它們的用於解決問題的思想方法不一樣。之所以說C++比C更先進,是因為" 設計這個概念已經被融入到C++之中 ",而就語言本身而言,在C中更多的是演算法的概念。那麼是不是C就不重要了,錯!演算法是程序設計的基礎,好的設計如果沒有好的演算法,一樣不行。而且,"C加上好的設計"也能寫出非常好的東西。
對語言本身而言,C是C++的子集,那麼是什麼樣的一個子集?從上文可以看出, C實現了C++中過程化控制及其它相關功能,而在C++中的C(我稱它為"C+"),相對於原來的C還有所加強,引入了重載、內聯函數、異常處理等等玩藝兒,C++更是拓展了面向對象設計的內容,如類、繼承、虛函數、模板和包容器類等等。
再提高一點,在C++中,數據封裝、類型這些東東已不是什麼新鮮事了,需要考慮的是諸如:對象粒度的選擇、對象介面的設計和繼承、組合與繼承的使用等等問題。
所以相對於C,C++包含了更豐富的"設計"的概念,但C是C++的一個自洽子集,也具有強大的功能,同樣值得學習。
回答者: imabeau - 助理 三級 2009-5-9 21:57
1. 在操作系統、 比較底層的編程、 嵌入式 等方面,除了C語言幾乎沒有其它選擇。 所以相當長時間內不可能過時
2. 隨便,哪種語言都有的學。 當然javascript之類的就別當回事了。。
3. 從本意上說,C++是C語言的面向對象的擴充。 但擴充的結果是失去了一些C語言原有的優勢和特點, 所以所謂「C++是更好的C」 或者「C++是面向對象的C」這種幻想已經是破滅了。 現實情況是,在使用方向上C++和C語言已經分道揚鑣, C++的優勢在大型軟體的快速開發
回答者: vbtraz - 高級魔法師 七級 2009-5-9 21:58
1.C沒過時,也不會過時,C可以直接和硬體打交道,別的高級語言都做不到,所以別寫操作系統就用它.
2.學C把,誰然C的現實用處不多,但是它是讓你學個習慣,打基礎的語言。
3.C++和C沒關系的,發明C++的人 建議我們直接學C++
回答者: ijlynietg - 同進士出身 六級 2009-5-9 22:44
1.c語言過時了嗎?回過時嗎?如果會那什麼時候回過時?如果不會 為什麼?
絕對不會過時。因為涉及底層的開發c還是非常優秀的
2.可以,程序書寫上還是多參考規范,c語言不夠嚴謹
3.c++是c的超集,更靈活,在大規模程序上更易維護,但也註定了它與底層的結合不是很好
回答者: wanfustudio - 副總裁 十級 2009-5-9 22:55
1,c語言在本世紀還不會過時,c語言是比較基礎的語言
2,最好從匯編開始,很多病毒,高級的程序都是匯編程序,
3,我同意c++是c語言的拓充(我是先學的C,c++幾乎包含所有的C的內容)
回答者: chengjie_ - 江湖新秀 四級 2009-5-10 00:18
說實話,你的問題根本沒人可以完整回答,再資深的人也不可能決定你的前途。
首先說過時問題,何謂「過時」,好,就算有你說的「過時」,那C不會是在世界各地一齊過時吧,總得慢慢過時吧。
其次適合從哪裡學,得看你想以後做什麼,也就是說得有個前提。
最後說區別,很多,多的我都羅列不出來,就算羅列出來了,你也未必看的明白,就算你最後費勁看明白了,那也估計你自己學的也差不多了,所以我就甭費勁復制粘貼了。
重要的是要抓緊一切時間開始做,問切實的問題,做的多了,自然就明白了,其實就那麼點事,不要把別人說的看成是自己的。
回答者: 可咸 - 舉人 四級 2009-5-10 00:20
我哥哥是駐日本軟體工程師。天天逼著我學C 這不1個多月了 還真學了不少東西
C是基礎 就像1+1 ,沒C C++學起來就很困難 學了C C++就容易多了
回答者: 遇見′伏筆 - 試用期 一級 2009-5-10 00:57
C語言 不會過時的...可以把他當做一種基礎來學習,你學習了他 再去學習別的語言如C++ 就會容易 好多...
我們就是學的C語言 C++ 可以看做C的拓展。C++支持面向對象功能的程序設計語言,而C語言是面向過程的程序設計語言,它不但具有C語言的短小精練,使用方便的特點,還在原來的基礎上,使類型更嚴格,使用更方便。C++面向對象 C面向過程 。
我覺得 可以 從C開始學起,這樣你學別的語言就會更容易了。
雖然語言不一樣,只是換個單詞 ,實際一個意思的。
有用的東西 怎麼可能過時啊 是吧? 加油! 還有匯編語言等你學呢,嘿嘿..不過好難哦!希望你是 這類語言的奇才...努力吧!
回答者: 管管的面面 - 初入江湖 二級 2009-5-10 10:05
樓主,你好!
1、C不會過時。。簡單說就是C是一種功能強大成熟的語言,小到單片機,大到幾何級計算機都用可以用它。。而且在低層操作的除匯編之外,基本上沒有比它更強的。。學C也是學其它語言的基礎。。
2、學習C可以學習它的演算法和數據結構。。這個是相當有用啊。。
3、C 和C++肯定有關系。。不是的話,那為什麼C++不叫P++,Q++什麼的。。C++的擴展名是cpp就是C Plus Plus的縮寫。。
C是面向過程。C++是面向對向。
回答者: 資州縱尋 - 大魔導師 十二級 2009-5-10 10:50
回答:1:C語言不會過時,因為他是簡單的入門語言程序,很普遍,新手必須學的,再高的手他也得會C語言。
回答:2:不一定,看個人愛好問題,但是有的東西也會涉及到C語言,你也可以從資料庫學起,CF,CB啦之類,沒有必須的開始位置。
回答:3:C語言也可以說是C++,但是版本不同一些命令和跳轉語言也不一樣,變化不太大,雖然方向不同,但是高點是一樣的。
回答者: ctksmq520 - 初入江湖 二級 2009-5-10 18:01
1.C語言沒過時,我不知道你是什麼專業的,但在我專業里要學單片機(一種晶元,廣泛用在日常生活和電子設備中,刷卡機,液晶顯示,讀卡器。。。等等中,只要你能看到的那些高級的設備都用到),就要求用C語言編程式控制制單片機實現功能的。不要以為C++等比他高級它就會過時,因為單片機高級語言只支持C語言。我參加全國的電子設計比賽,在產生正弦波,數模轉化,液晶顯示等方面,都用到單片機和C語言控制。全國電子設計大賽作為全國四大大學生比賽之一,學好單片機和C語言是必須的。你不要以為C語言只是用來做電腦軟體的,那樣的話是不實際的,C語言是用在硬體控制上。
2.如果你要學高級語言,我推薦你學C語言先,我現在都覺得C語言很實用,C語言的代碼比較易懂,當我學了C語言再學c++和java,就覺得這兩個只是在C上加了點東西。
3.C語言是面向過程的(注重過程的編寫),C++是面向對象的(把過程分類,包裝好,使用時直接調用),C語言就像製作的小零件,C++就像已經有了這些零件,把它組裝成大機器,所以說c++功能強大。
回答者: 12121237 - 舉人 四級 2009-5-11 16:23
可以的,任何一個開發語言都是獨立的
回答者: 豬兵團 - 經理 四級 2009-5-12 08:44
1、C語言是學習其他高級語言的基礎,所以不會過時
2、如果你是想學編程的,可以從c語言出發
3、如果你C語言學好了,學C++就會更容易,因為我現在就是在學計算機專業,第一個學期學的C語言,所以比較了解
還有什麼不懂留言給我吧,呵呵`!
回答者: feng_liu0621 - 試用期 一級 2009-5-12 21:01
1如果你是初學者的話 絕對不過時!然而一切事物都有始終 但必須要有新事物替代 如果某天出現用自然語言編程的話 那它就過時了。
2 你作為初學者 如果真的想學好計算機語言的話 從c語言開始那是理所當然的
3 c和c++其實如果學了c後那它則是c的拓展 沒學c則好像什麼都不是 建議你慢慢來 ……
回答者: 錦陽之戀 - 試用期 一級 2009-5-13 00:41
首先樓主我接觸C不到4個月,回答你這個問題不是為了拿分,只是不想樓主走彎路,C語言不會過時,當今很多人都在用C語言,因為C語言屬於中高級語言,接近底層.當然匯編是另一種難以理解的語言,一個計算機愛好者可以看看C語言,了解數據結構,了解CPU,了解操作系統是最好不過的了.C語言和C++不相同,C語言用的是指針,而C++是面向對象,所以兩者關系很小,有人說學習了C,然後學習C++就很好學,那是因為你明白了語言之間的邏輯,語言具有共通性,就像漢語跟外語有共同的地方.希望能給樓主一些好的想法.
61952645這是學習C語言的群,我們有自己的論壇www.6dtm.com專門學習各類關於電腦知識的論壇,歡迎你去看看
回答者: 冰冰_濤 - 助理 三級 2009-5-13 18:13
1、加法過時了嗎? 所謂的過時是說你不能用它找到工作,但是編程初學者從它學起很好;
2、c與c++的區別,你學了自然有你自己的理解。
回答者: az12xc34 - 兵卒 一級 2009-5-13 18:44
1. C語言再過50年也不會過時,有些很底層(比如操作系統)很注重效率(比如關系資料庫)都必須拿C語言寫的,偶爾嵌點匯編。
2. C語言很適合入門,不過前提是要有必要的計算機體系架構的知識,畢竟C語言很貼近硬體層,完全不懂計算機硬體知識會很難理解一些概念比如指針。既然是愛好者,推薦看一些大學計算機組成原理課程的教材。
3. C語言跟C++,從語法上說C++是C的超級,或者說C++是幾乎完全兼容C的。但從開發理念上說,C++是面向對象,C語言是面向過程,可以說是分別代表了兩個時代!如果要刨根問底,建議閱讀《C++編程思想》,裡面詳細解釋了C++是怎樣在C的基礎上一步步發展起來的,C++的每個主要特性各是解決了C語言的哪些缺陷。
回答者: catmonkeyxu - 見習魔法師 二級 2009-5-14 09:49
要了解C與C++的不同首先要了解C與C++的發展史!
C是在B的基礎上發基礎上發展起來的。1972年至1973間,貝爾實驗室的D.M.Ritchie在B的基礎上設計出了C語言。C語言既保持了BCPL和B語言的優點(精練,接近硬體),又克服了它們的缺點(過於簡單,數據無類型等)。
C語言的優點: 1:語言簡單、緊湊,使用方便、靈活。 2:運算符豐富。 3:數據類型豐富,具有現代語言的各種結構。 4:有結構化的控制語句(if…else,while,for等)。 5:語法限制不太嚴格,程序設計自由度大。 6:可以直接對硬體操作。 7:生成目標代碼質量高,程序執行效率高。 8:可移值好!
C++是在C的基礎上發展起來的,所以C++對C具有兼容性,即用C寫的程序可以在C++上運行。就是因為C++對C具有兼容性所以C++在面向對象的設計語言中就失去了很多優勢。比如指針,在其他語言中(如Java)中是沒有的,C++兼容C所以一定要有的。C++是介於C與Java之間的過度語言,並不是完全的面向對象的語言。
再打個簡單的比喻來說明C與C++之間的關系。我們可以把C比作是自行車那麼C++就是電動自行車。自行車時速要是10千米每小時的話,那麼電動自行車就可以達到20千米每小時。也就是說C++比C具有更強的功能。再有就是我們完全可以按照騎自行車的辦法去騎電動自行車,這說明C++對C具有兼容性。再有就是電動自行車在沒有電的情況下完全可以按照騎自行車的方法去騎電動自行車。這一點說明了C++在C的基礎上發展而來的。
說了這多麼應該對C與C++有所了解了吧。希望對你學習有所幫助!
回答者: aimilin6688 - 助理 三級 2009-5-16 14:03
1.沒過時。不會過時。因為它可以直接對硬體進行操作。是其他語言無法完全代替的。
2.適合從C開始學。
3.c++是c語言的拓充不錯,但是C也有C++無法代替的地方有的
人認為C++ > C那會讓人笑掉大牙,不妨你去打聽一下,現在有幾個操作系統內核是用C++寫的,又有幾個實時系統用的是C++,當然我也不是說C++不好,但是目前的內核和實時系統中C++還無法與C匹敵,不過C++適合做應用系統的開發。所以我的觀點是不在於你用什麼語言,而在於你干什麼工作。你的設計體現了你的技術層次。
一個初學者可以從C學起,再學C++就簡單多了
回答者: cyj78117520 - 見習魔法師 二級 2009-5-17 10:38
Ⅱ 誰有C語言寫的map和hashmap容器
你可以參考STL 源碼解析 中對於map 和hashmap 的實現
因為是C語言的開發,不能使用標准庫的map和hashmap,原以為這個代碼應該很多的。
Ⅲ C語言和C++的區別
C語言與C++的區別有很多,下面是簡要概述:
1、面向不同
C語言是面向過程的,
C++是面向對象的。
函數庫
C語言有標準的函數庫,它們鬆散的,只是把功能相同的函數放在一個頭文件中;
C++對於大多數的函數都是有集成的很緊密,特別是C語言中沒有的C++中的API是對Window系統的大多數API有機的組合,是一個集體。但你也可能單獨調用API。
3、結構概念不同
C言中結構只有成員變數,而沒成員方法,C語而在但是在C語言中結構的成員是公共的,什麼想訪問它的都可以訪問;
C++中結構中,它可以有自己的成員變數和成員函數。
4、寫作數量不同
C語言可以寫很多方面的程序,
C++可以寫得更多更好,C++可以寫基於DOS的程序,寫DLL,寫控制項,寫系統。
5、組織不同
C語言對程序的文件的組織是鬆散的,幾乎是全要程序處理;
C++對文件的組織是以工程,各文件分類明確。