{eval=Array;=+count(Array);}

国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

問答專欄Q & A COLUMN

C語言是不是世界上最好的編程語言?真的永遠不會過時嗎?

stefanstefan 回答10 收藏1
收藏問題

10條回答

浠ラ箍

浠ラ箍

回答于2022-06-22 19:04

c語言是不是世界上最好的編程語言?答案肯定是否定的。

c語言真的永遠不會過時嗎?答案當然也是否定的。

任何東西,沒有最之說,只有最適合之說。

一、c語言的最大優勢是效率。提起效率,其實效率最高的語言是匯編語言,但是匯編語言是機器語言,不符合人類的使用習慣。所以綜合編程效率和運行效率來看,c語言就是首選了。

然而,是不是在任何情況下,我們都對執行效率這么苛刻呢?

當然不是了。

在嵌入式系統里,比如像智能手表、針孔攝像頭等,由于體積、能耗和硬件資源的限制,我們對代碼的運行效率比較苛刻(這樣才能能節省內存和cpu,從而節省成本)。所以我們使用c語言,就是最合適的。

二、但是在pc系統或者服務器系統里,尤其是隨著硬件價格成本的不斷降低(請參考摩爾定律),我們對代碼的運行效率不那么苛刻了。反而隨著軟件復雜度的提升,我們對代碼的編程效率和代碼的集成度有了更高的需求,而這些卻都不是c語言的強項,這個時候面向對象語言,比如java會更加合適。

所以,綜合編程語言的發展歷史,從來沒有也不會有一款編程語言永遠都不會過時。因為社會在發展,有些制約因素在以前是制約因素,現在可能就不是了,那么所謂合適的主體也就變了。c語言在過去的幾十年里一直興盛不衰,但是并不意味著以后不會消亡。我們看到隨著嵌入式設備的和web化趨勢的結合,golang語言開始嶄露頭角,在一些領域慢慢替代c語言了。相信在未來,開發語言會不斷的進行進化,進化出符合當前需求的新的開發語言。

評論0 贊同0
  •  加載中...
tylin

tylin

回答于2022-06-22 19:04

是不是最好的語言?俗話說,文無第一,所以也不存在最好的語言,只有最合適某些領域的語言。


永遠不會過時?計算機出現才幾十年,現在任何的語言、設計,都遠遠談不上永遠。一定會有過時的一天。


但是,我們可以說,C語言是最經典的流行語言。從1970年代發展到現在,足夠經典,也足夠優秀。因為:

  • C語言方便、高效的完成了對計算機體系結構的抽象。而從1970年代到現在,計算機底層的體系結構并無巨大變化

  • C語言與UNIX系統構成了良好的共生關系。而UNIX及類UNIX系統到現在仍統治整個計算機界(Linux, macOS, Android, iOS等等,連Windows都號稱POSIX兼容)

  • C語言是互聯網TCP/IP編程的原生語言,很多基礎協議內容如socket,都是基于C實現,也適合C實現。而TCP/IP正統治整個網絡

  • C語言編譯器容易實現,對一個新CPU,可以迅速實現對應的C編譯器,移植成本低。現在大量的MCU都實現且僅實現了C編譯器


小結一下:

  • C語言雖然談不上最好,也談不上永不過時,但在與硬件系統接近的領域,如操作系統、驅動程序、MCU編程等領域,C語言是最適合的,并且在硬件底層未發生巨大變化的情況下,仍會具備強大的生命力,是一個值得花時間學習的語言。

評論0 贊同0
  •  加載中...
ARGUS

ARGUS

回答于2022-06-22 19:04

首先,C語言是世界上最好的編程語言,它是其他的編程語言需要膜拜的編程語言,它是編程語言世界“神一樣”的存在,永遠不可能過時,因為它是指引初學者學習編程語言的“燈塔”。

其后任何的編程語言,都有C語言的身影。它們出現,由于時間的推移和應用的特殊需要,C語言搭建的家園必須擴建,但是它們的基石離不開C語言,至少擺脫不了C語言的影子。

C語言是最接近底層(匯編語言)的編程語言,它編譯后的效率極高。

C和C++語言都有指針,特別是函數指針,而其他高級語言極力反對的就是指針的存在。

有些編程語言的崛起就是以指針為攻擊對象而吸引眼球的。

在嵌入式領域,中斷向量實際就是函數指針。

C語言的函數指針和結構及聯合,構成了完美的“COM接口技術”,故在嵌入式領域,C/C++編程語言是其他任何編程語言無法取代的。

菜農認為,沒有指針的編程語言,就別在嵌入式領域混了!

如圖所示,菜農在2003年在PIC上用宏匯編實現的“HPL語言”(早已完美地應用到產品上),它也跑不出C語言的影子!

菜農從1981年就開始用匯編語言,BASIC,TC,BC,DBASE,FOXBASE,VB,VC++,FOXPRO,BC++,DELPHI,CVI,mysql,JAVA,C#,html,css,js,VB腳本到如今的PHP,也在2006年學過python,也看過QT……總之菜農用過、學過和看過幾乎所有流行的編程語言。




評論0 贊同0
  •  加載中...
chunquedong

chunquedong

回答于2022-06-22 19:04


不請自來,作為一名長期使用C語言進行開發的老司機,來回答一下這個問題。

首先,C語言還真是一門永不過時的語言

答主本人從2000年開始接觸使用C語言,那還是486計算機還是天價的時代,上一次計算機課和過年一樣興奮。迄今已經近20年的時間,很多其它語言有的衰落了,有的起來了,有的是起起落落。

像pascal、basic、fortran等等,現在有的學生可能連聽說過都沒有,現在幾乎已經消失了,像C/C++/java/python/php/javascript等等都是經過大浪淘沙的勝利者,尤其是C語言,生命力是最頑強的。因為幾乎所有的計算機系統底層都是用C語言開發,尤其是linux/unix以及其衍生系統都是以C語言為主的操作系統,windows系統也是如此,只不過微軟花了大價錢開發了VC,但是還是以C語言為基礎的封裝的。

后來的嵌入式操作系統更是離不開C語言,所有嵌入式的BSP都是以C語言編程的,固件庫也是用C語言封裝的。包括已經一統手機天下的android操作系統,所有的driver層還必須是C語言開發,因為android的底層就是linux,android不過是在linux上開發優化了java虛擬機,然后用java語言開發了UI庫。其實嚴格來說android并不是新的操作系統,而是一個適用于手機的UI庫。

正如一個城市建筑群,所有建筑的地基都是用C語言打下的,你能把地基丟掉嗎,顯然是不行的,C語言青春永駐也是自然而然的事情。

其次、以后C語言會過期嗎

答案是:不會,上面已經說了,C語言是可以直接和硬件驅動語言,是所有操作系統的基礎。除此之外,C語言的效率是除匯編語言之外效率最高的語言,即使目前計算機的算力已經非常廉價的今天,在某些要求苛刻的關鍵計算任務上,首先仍然是C語言,甚至有時使用C語言有時并不是完全因為效率,而是因為可控。高級語言由于封裝了操作系統的某些特性,比如線程安全、內存管理等等。這些高級特性再某些時候運行結果可能是未知的,比如有可能內存分配失敗,線程得不到及時調度等。對于實時性要求比較高的場景,這些不可預知的問題都是致命的。而C語言的簡單直接,就顯得格外重要了。

最后、C語言是永不過期的語言

即使不斷誕生新的語言,有一部分任務采用其他語言完成,但是和底層硬件打交道仍然離不開C語言,如果你打算在driver層面或者從事嵌入式開發謀一份工作,那就毫不猶豫的擁抱C語言吧,如果你是高手,高薪工作那都不是事兒。


如果您有什么不同意見,歡迎留言討論。

評論0 贊同0
  •  加載中...
senntyou

senntyou

回答于2022-06-22 19:04

C與言是不是最好的編程語言這個不好說,但是在可預見的未來是不會過時的。

一、C語言,最好的編程語言?

這世上有很多優秀的編程語言,C語言,C++語言,Java,C sharp等,每種語言都有自己的特點和使用場景,也都有自己的缺點和無法彌補的遺憾。要說哪種編程語言是世界最好的編程語言這個問題是沒有意義的。

二、C語言,會過時嗎?

  1. 所有的語言之間都有相通的地方,比如語法上。C語言里有數組的概念,C++語言也有,Java也有。如果你理解了C語言數組的概念,你再去學習其他編程語言的數組將會很輕松。
  2. C語言中有指針的概念,很多人認為指針很難理解,經常會用錯指針。為了免去學習C語言指針的苦惱,Java編程中就去掉了指針的概念,這給很多程序員帶來了福音??墒侨サ袅酥羔樀母拍畈⒉灰馕吨蜎]有指針了,只是Java封裝了指針而你看不到而已,也就是說在編程的時候依然要用到C語言的指針。可以說C語言中的很多概念是其他編程語言的基礎。
  3. C語言能實現其他編程語言不能實現的功能。比如在音視頻編解碼方面的項目幾乎都是清一色使用C語言開發的,幾乎看不到使用其他的高級語言開發,尤其是那些能做出很漂亮的UI界面的編程語言。沒辦法,誰讓C語言處理運行效率高呢!

C語言不一定是最好的編程語言,但它是一個不可被替代的編程語言,它的許多精髓仍然被其他的編程語言借鑒著!學好C語言吧!

評論0 贊同0
  •  加載中...
changfeng1050

changfeng1050

回答于2022-06-22 19:04

問一種語言是不是世界上最好的編程語言,實際上這種問法是不恰當的。C語言也好,Basic語言也好,或者是Python語言也好,不存在好與不好之說,只能說哪個更適合你,哪種編程語言更擅長哪種領域而已。

如對于C語言,應該說是一種比較重要的、比較基礎的編程語言。如果你以后的工作方向更側重于硬件方面(如單片機開發)、操作系統底層通信開發、復雜信號處理算法等等方面,那學習C語言是確實比較合適的。C語言是一種編譯型語言,運行效率比較高,在這些領域更合適些。

但C語言的的缺點也比較明顯,相對于Python等動態類型的編程語言來講,它入門相對較大,自己在學習過程中必須要有足夠的耐心、恒心,多多練習、多多調試才能積累更多的編程經驗,得心應手的解決實際的工程問題。

在C語言是否會過時方面,應該也不存在過時之說,各種編程語言的編程思想方法(如程序結構都有順序、循環、選擇等結構,數據結構的組織)等思路方面都是相通的。學好C語言,對于你將來學習第二種編程語言肯定是有好處的,能夠幫助你更快的學習理解其它的編程語言思想,會有極大的促進作用。

評論0 贊同0
  •  加載中...
陳偉

陳偉

回答于2022-06-22 19:04

C語言是不是世界上最好的編程語言

直接從數據來看,TIOBE公布了5月編程語言的排行榜,C語言時隔5年重回第一。


首先,C語言是編程語言世界中“神一樣”的存在?,F如今市面上大多數編程語言都或多或少的包含C語言的身影。C語言是最接近底層的編程語言,編譯后的效率極高。C語言有指針,特別是函數指針,中斷向量實際就是函數指針。

C語言的函數指針和結構及聯合,構成了完美的“COM接口技術”,在嵌入式領域,C/C++是其他任何編程語言無法替代的。如果語言沒有指針,那在嵌入式領域是非常難生存的。

C語言的思想

如果你要懂得C語言,那必須要懂得程序設計的思想,想真正學會程序的設計必須與數據結構打交道。如果初學者從Java或者VB入手,基本上很難理解如何構造數組、鏈表、樹、圖等結構,這些東西比較容易和封裝、繼承等概念沖突,反觀C語言則可以清楚明白的表示。只有真正理解數據結構,才可以體驗程序設計的思想和算法精髓。

C語言幾乎無所不能

所有包含微處理器的設備都支持C語言,從微芯片到手機都可以通過C語言推動。C語言是一個比較少見的應用領域極為廣泛的語言。所有的系統平臺都支持C語言,所有的應用程序也都可以由C語言來開發。

不會過時的原因

1.C語言可以讓你更好的了解計算機。

2.設備驅動程序和操作系統只能用C語言編寫。

3.微控制器程序的編寫。

4.相較于其他編程語言,在實現相同功能的前提下,C語言所需要的代碼更少,運行效率更快。有時候,你程序所需要的速度,只有C語言可以完成。

5.幾乎所有高級編程語言都是以C語言為基礎,所以學習過C語言,在學習其他編程語言時會簡單很多。

6.C語言的存在時間很長,使用團體非常廣泛并且有大量的現成代碼可以利用。這就使你能在過去程序的基礎上,快速進行更新。

7.C語言是開源組織的語言。Linux就是用C語言編寫的,Linux的功能有多強大,這個我不多贅述。

8.C語言是唯一一個闡述指針本質的語言,C#和Java跳過了指針,但是不可否認的是,指針卻是讓C語言更加強大。

評論0 贊同0
  •  加載中...
xiongzenghui

xiongzenghui

回答于2022-06-22 19:04

如果你是計算機專業的學生,幾乎各大高校入門的第一種語言就是C語言。當然也會有以C++或者Java入門的。正經的說,沒有一門語言可以被稱為最好的編程語言,之所以會有這么一說,多半都來自程序員間的囧談。IT行業,你適合的,對你來說就是最好的。

其次,C語言會不會過時,這個不會的。主要從兩個方面聊聊:

第一:為什么更多的搞笑采用C語言作為入門語言?并不是說C語言簡單(現在大部分程序員沒有多少敢說精通C語言的),而是C語言可以更快的帶你進入編程世界,了解編程的常規思維方法。C語言是一門面向過程語言,相對面向對象而言,很多邏輯可以看得更清晰,不至于對于初學者而言太過于抽象。從C語言學到的概念理論,也都可以很快的套用到其他編程語言。比如判斷、循環、函數、數據結構等等。

第二:大家都知道C語言是一門底層語言,略高于匯編語言之上,低于Java/Python等高級語言。C語言的存在就是更方便的銜接硬件和軟件。比如電腦開機,從按下電源按鈕到屏幕顯示開機Logo,這個階段運行的絕大部分程序都是C語言(早些時候更多的是匯編)。換言之,C語言服務的行業更多的是制造業,制造業雖然說不如互聯網那樣讓人眼花繚亂,但是也不可或缺。沒有制造業,何談互聯網。

如果你想入門編程,還是先想好自己的方向。C語言多掌握一些,甚至你會覺得很多問題你都會有更深的理解。比如變量存儲、對象生存期等等。

評論0 贊同0
  •  加載中...
CastlePeaK

CastlePeaK

回答于2022-06-22 19:04

c語言永遠不會過時,為什么呢?要從我們解決問題的思維方式和方法上來看。人類的思維方式和方法基本原理都一樣,都是通過抽象,分類,然后按照一定的步驟去執行。實際這就是計算機里對程序的定義。而c語言基本覆蓋了這些,并且簡潔,優美。它是我們解決問題的基本語言,什么都可以做。

而大家看到的很多高級語言,實際上他們更注重的是應用,讓開發人員能更快,更方便的去開發應用。大家知道,應用是在不斷變化的,也是在不斷的被淘汰,而基本原理是不會變的,學會c語言,可以做到以不變應萬變。

評論0 贊同0
  •  加載中...
light

light

回答于2022-06-22 19:04

第一、在沒有界定范圍的時候,沒有人能夠說什么是最好。每一種語言出現都有它出現的應用場景,在那個時代,那個場景下,那個語言才能說最好。如果你需要一個效率極高的語言,那肯定就是C語言或者匯編。如果你要搞嵌入式開發,那肯定也是C語言,java和C#沒法在嵌入式系統上運行,所以他們在這方面不存在好不好。

第二、在現在看來,C語言是永遠不會過時的語言。起碼在馮諾依曼機的時代是這樣的,我們也沒有跡象能看出馮諾依曼機要被淘汰。

評論0 贊同0
  •  加載中...

最新活動

您已邀請0人回答 查看邀請

我的邀請列表

  • 擅長該話題
  • 回答過該話題
  • 我關注的人
向幫助了您的網友說句感謝的話吧!
付費偷看金額在0.1-10元之間
<