Re: [問卦] 為什麼很多學校程式設計都要先教C

作者: benz31205 (潮爽的)   2015-09-25 23:51:05
※ 引述《qxxrbull (每日一止兀 蛆蛆遠離我)》之銘言:
: 如題
: 幾乎很多學校
: 不管是高職 大學 等等
: 程式設計相關的課
: 幾乎都先教C
: 為什麼不先教其他的
: 像是JAVA Python Ruby VB C++ C#
: 甚至現在蠻夯的Swift Haskell...等等
: 要先教C
: 有這個八卦嗎?
因為現在大部分的語言幾乎都是C like的語言
在語法上都與C有相當程度上的相似(例如JAVA與PHP)
只要學過C與之後,再學習其他語言就能很快上手
再來就是C語言相較其他的語言是比較低階的
你必須要稍微懂得電腦底層的運作原理
例如想印出資料的話 你必須告訴編譯器你要丟進來的資料是什麼型態的
要印出整數要printf("%d"); 浮點數要printf("%f); 字串要printf("%s");
而C/C++語言的另一個優點就是其他高階語言沒有的:指標
因為是直接對記憶體進行操作
讓運用指標的C/C++記憶體使用與執行速度有很高的效率
在硬體配置較為不足的嵌入式系統來說是很大的優點
但這也容易出現指標運用不當導,動到不該動的記憶體導致系統崩潰
使得後來的語言都把指標給拿掉了
以上是小弟自己淺薄知識打出來的
希望有回答道你問題
作者: neverfly (neverfly)   2015-09-25 23:52:00
維護別人程式的時候看到一堆*****就會很想把他叫來殺死
作者: nctugoodman   2015-09-25 23:55:00
推一個
作者: RrEpic (Rupert)   2015-09-25 23:56:00
pointer 真的蠻強大的,很活
作者: lturtsamuel (港都都教授)   2015-09-25 23:58:00
pointer到底有多難 明明是程式跟文件沒寫好
作者: howdonc (老地方)   2015-09-26 00:16:00
因為教授对C較熟,更早以前只會教Fortran
作者: appleseed (你我皆凡人)   2015-09-26 00:36:00
很多高階語言還是保有指標的使用~看需求
作者: TBEX (人心布穀鳥)   2015-09-26 01:07:00
不能直接操作memroy address根本不是程式啊
作者: jengjye (建)   2015-09-26 01:37:00
操作指標不是難不難的問題 是容易造成意料外問題與混亂

Links booklink

Contact Us: admin [ a t ] ucptt.com