⑴ 什麼叫開源的c語言庫
開源是unix系統發展過程中產生的一個詞,意思是開放源代碼。
開源的C語言庫,就是自己可以得到源代碼的C語言庫,可以不斷地改進這個庫中的源代碼,大家共同進步,百家爭鳴,有利於C語言的發展。
⑵ C語言是哪個國家的語言
C語言之所以命名為C,是因為 C語言源自Ken Thompson發明的B語言,而 B語言則源自BCPL語言。
1967年,劍橋大學的Martin Richards對CPL語言進行了簡化,於是產生了BCPL(Basic Combined Programming Language)語言。
c語言宣傳圖
20世紀60年代,美國AT&T公司貝爾實驗室(AT&T Bell Laboratory)的研究員Ken Thompson閑來無事,手癢難耐,想玩一個他自己編的,模擬在太陽系航行的電子游戲——Space Travel。他背著老闆,找到了台空閑的機器——PDP-7。但這台機器沒有操作系統,而游戲必須使用操作系統的一些功能,於是他著手為PDP-7開發操作系統。後來,這個操作系統被命名為——UNIX。
1970年,美國貝爾實驗室的 Ken Thompson,以BCPL語言為基礎,設計出很簡單且很接近硬體的B語言(取BCPL的首字母)。並且他用B語言寫了第一個UNIX操作系統。
1971年,同樣酷愛Space Travel的Dennis M.Ritchie為了能早點兒玩上游戲,加入了Thompson的開發項目,合作開發UNIX。他的主要工作是改造B語言,使其更成熟。[2]
1972年,美國貝爾實驗室的 D.M.Ritchie 在B語言的基礎上最終設計出了一種新的語言,他取了BCPL的第二個字母作為這種語言的名字,這就是C語言。
1973年初,C語言的主體完成。Thompson和Ritchie迫不及待地開始用它完全重寫了UNIX。此時,編程的樂趣使他們已經完全忘記了那個"Space Travel",一門心思地投入到了UNIX和C語言的開發中。隨著UNIX的發展,C語言自身也在不斷地完善。直到今天,各種版本的UNIX內核和周邊工具仍然使用C語言作為最主要的開發語言,其中還有不少繼承Thompson和Ritchie之手的代碼。[2]
在開發中,他們還考慮把UNIX移植到其他類型的計算機上使用。C語言強大的移植性(Portability)在此顯現。機器語言和匯編語言都不具有移植性,為x86開發的程序,不可能在Alpha,SPARC和ARM等機器上運行。而C語言程序則可以使用在任意架構的處理器上,只要那種架構的處理器具有對應的C語言編譯器和庫,然後將C源代碼編譯、連接成目標二進制文件之後即可運行。[2]
1977年,Dennis M.Ritchie發表了不依賴於具體機器系統的C語言編譯文本《可移植的C語言編譯程序》。[3]
C語言繼續發展,在1982年,很多有識之士和美國國家標准協會為了使這個語言健康地發展下去,決定成立C標准委員會,建立C語言的標准。委員會由硬體廠商,編譯器及其他軟體工具生產商,軟體設計師,顧問,學術界人士,C語言作者和應用程序員組成。1989年,ANSI發布了第一個完整的C語言標准——ANSI X3.159—1989,簡稱「C89」,不過人們也習慣稱其為「ANSI C」。C89在1990年被國際標准組織ISO(International Organization for Standardization)一字不改地採納,ISO官方給予的名稱為:ISO/IEC 9899,所以ISO/IEC9899: 1990也通常被簡稱為「C90」。1999年,在做了一些必要的修正和完善後,ISO發布了新的C語言標准,命名為ISO/IEC 9899:1999,簡稱「C99」。[2] 在2011年12月8日,ISO又正式發布了新的標准,稱為ISO/IEC9899: 2011,簡稱為「C11」。
c語言是開源性語言 起源美國
⑶ 為什麼要學習c語言它具有哪些特性
我在網上看到一些,也許對你有幫助:
1)相比較其他的編程語言(像c++,java),c語言是個低級語言。從總體上來說,低級的編程語言可以讓你更好的了解計算機。
2)設備驅動程序和操作系統只能用c語言來編寫。現在,你可能還從來沒有編寫過一個設備驅動程序或者一個操作系統,但是如果你需要去修改他們的時候,怎麼辦?
3)如果你想要得到一份編寫微控制器程序的工作的時候,該怎麼辦?他們都是用c語言編寫的。就因為不想學習一門新的語言,你就准備限制你能得到工作的機會嗎?
4)c的程序比其他用別的語言寫的程序,實現相同的功能,它用的代碼行數更少,而它帶來的運行效率卻更快。有時候,你的程序所需要的速度,只有c語言能做到。
5)如果你學習過c語言,你就能學習現在任何的高級編程語言。因為所有的高級語言都是以c語言為基礎的(像java,c++,c#等等)。
6)因為c語言已經存在很多年了,它有廣泛的使用團體並且有大量的現成代碼可以利用。這就使你能在過去程序的基礎上,快速和高效的編寫新的演算法和函數。
7)c語言是一個開源組織的語言。一個開源組織的產物--linux,就是用c語言寫的。如果你會c語言,你就能參加這個組織並且還能向眾多的開源組織投稿,比如參加source
forge並且給他們投稿。
8)c語言是唯一一個向你闡述指針的本質的語言。而c#和java乾脆跳過了指針這個題目。可是指針確實使c語言變得更加強大。
9)找編程開發方面的工作時,c語言仍然是最普遍需要的語言。所以它值得你花時間去學會它。
10)
任何裡面有微處理器的設備都支持c語言。從微波爐到手機,都是由c語言技術來推動的。
⑷ c語言重要嗎
大學考C語言、計算機二級考C語言,單片機、嵌入式還是C語言,你說C語言能不重要嗎。
設備驅動程序和操作系統只能用C寫
設備驅動程序和操作系統只能用C語言來編寫。現在,你可能還從來沒有編寫過一個設備驅動程序或者一個操作系統,但是如果你需要去修改他們的時候,怎麼辦?只能用C語言了。
微控制器程序只能用C寫
如果你想要得到一份編寫微控制器程序的工作的時候,該怎麼辦?他們都是用C語言編寫的。就因為不想學習一門新的語言,你就准備限制你能得到工作的機會嗎?
C是最基礎的編程語言
如果你學習過C語言,你就能學習現在任何的高級編程語言。因為所有的高級語言都是以C語言為基礎的(像JAVA,C++,C#等等)。
C是開源的
C語言是一個開源組織的語言。一個開源組織的產物--LINUX,就是用C語言寫的。如果你會C語言,你就能參加這個組織並且還能向眾多的開源組織投稿,比如參加Source
Forge並且給他們投稿。
C語言是唯一闡述指針本質的語言
C語言是唯一一個向你闡述指針的本質的語言。而C#和Java乾脆跳過了指針這個題目。可是指針確實使C語言變得更加強大。
⑸ 為什麼要學習和使用C語言
每個程序員在他們的編程生涯中都應該學習C語言,因為它有太多難以忽視的好處了。除了它會給你提供更多的工作機會之外,C語言還會教給你更多的關於計算機的知識。它能給我們提供的裨益,,簡單列舉如下:
1.相比較其他的編程語言(像C++,JAVA),C語言是個低級語言。從總體上來說,低級的編程語言可以讓你更好的了解計算機。
4.C的程序比其他用別的語言寫的程序,實現相同的功能,它用的代碼行數更少,而它帶來的運行效率卻更快。有時候,你的程序所需要的速度,只有C語言能做到。
5.如果你學習過C語言,你就能學習現在任何的高級編程語言。因為所有的高級語言都是以C語言為基礎的(像JAVA,C++,C#等等)。
6.因為C語言已經存在很多年了,它有廣泛的使用團體並且有大量的現成代碼可以利用。這就使你能在過去程序的基礎上,快速和高效的編寫新的演算法和函數。
7.C語言是一個開源組織的語言。一個開源組織的產物--LINUX,就是用C語言寫的。如果你會C語言,你就能參加這個組織並且還能向眾多的開源組織投稿,比如參加Source Forge並且給他們投稿。
8.C語言是唯一一個向你闡述指針的本質的語言。而C#和Java乾脆跳過了指針這個題目。可是指針確實使C語言變得更加強大。
9.找編程開發方面的工作時,C語言仍然是最普遍需要的語言。所以它值得你花時間去學會它。
10.任何裡面有微處理器的設備都支持C語言。從微波爐到手機,都是由C語言技術來推動的。
11.好了,說了這么多,大家應該感到我們應該學習C語言的必要性和迫切性了吧!那就趕快學吧!讓它成為我們取得更大成功的階梯!
希望可以幫到你,滿意的話請採納,謝謝
⑹ C語言是開源組織的語言嗎
語言不存在開不開源。是否開源是指編譯C/C++代碼的編譯器是否開源。目前只有GCC開源的。微軟的c/c++編譯器(vs)是不開源的。
⑺ 請專家講下.C語言本身是不是開源的!java語言是開源的
C語言本身不是開源的。這個從C調用諸多的.dll庫你就可以知道了。
java是開源的,原因是java的二進制文件.class你可以通過一定的手段或軟體可以看到當初寫它的源代碼。.dll庫文件你可以看到嗎?
⑻ c語言本身是開源的嗎c語言是用什麼寫的
C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。
二十世紀八十年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標准局為C語言制定了一套完整的美國國家標准語法,稱為ANSI C,作為C語言最初的標准。目前2011年12月8日,國際標准化組織(ISO)和國際電工委員會(IEC)發布的C11標準是C語言的第三個官方標准,也是C語言的最新標准,該標准更好的支持了漢字函數名和漢字標識符,一定程度上實現了漢字編程。
⑼ 問個白痴問題,C語言開源嗎
語言不存在開不開源。語言本身是一套(語法)標准比如"C++11",這個標準的草案網上可以下載,如果是正式版本需要付費。
是否開源是指編譯C/C++代碼的編譯器是否開源。
目前只有GCC開源的。intel的和微軟的c/c++編譯器是不開源的。
⑽ C語言是什麼意思
C語言是一門通用計算機編程語言,廣泛應用於底層開發。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。
二十世紀八十年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標准局為C語言制定了一套完整的美國國家標准語法,稱為ANSI C,作為C語言最初的標准。
目前2011年12月8日,國際標准化組織(ISO)和國際電工委員會(IEC)發布的C11標準是C語言的第三個官方標准,也是C語言的最新標准,該標准更好的支持了漢字函數名和漢字標識符,一定程度上實現了漢字編程。
C語言是一門面向過程的計算機編程語言,與C++,Java等面向對象的編程語言有所不同。
其編譯器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。
(10)c語言是開源的嗎擴展閱讀:
C語言的優勢:
1.相比較其他的編程語言(像C++,JAVA),C語言是個低級語言。從總體上來說,低級的編程語言可以讓你更好的了解計算機。
2.設備驅動程序和操作系統只能用C語言來編寫。現在,你可能還從來沒有編寫過一個設備驅動程序或者一個操作系統,但是如果你需要去修改他們的時候,怎麼辦?
3.如果你想要得到一份編寫微控制器程序的工作的時候,該怎麼辦?他們都是用C語言編寫的。就因為不想學習一門新的語言,你就准備限制你能得到工作的機會嗎?
4.C的程序比其他用別的語言寫的程序,實現相同的功能,它用的代碼行數更少,而它帶來的運行效率更快。有時候,你的程序所需要的速度,只有C語言能做到。
5.如果你學習過C語言,你就能學習現在任何的高級編程語言。因為所有的高級語言都是以C語言為基礎的(像JAVA,C++,C#等等)。
6.因為C語言已經存在很多年了,它有廣泛的使用團體並且有大量的現成代碼可以利用。這就使你能在過去程序的基礎上,快速和高效的編寫新的演算法和函數。
7.C語言是一個開源組織的語言。一個開源組織的產物--LINUX,就是用C語言寫的。如果你會C語言,你就能參加這個組織並且還能向眾多的開源組織投稿,比如參加Source Forge並且給他們投稿。
8.C語言是唯一一個向你闡述指針的本質的語言。而C#和Java乾脆跳過了指針這個題目。可是指針確實使C語言變得更加強大。
9.找編程開發方面的工作時,C語言仍然是最普遍需要的語言。所以它值得你花時間去學會它。
10.任何裡面有微處理器的設備都支持C語言。從微波爐到手機,都是由C語言技術來推動的。