[問題] C規格書的閱讀方式

作者: CsCdanNix (丹尼克斯ㄟ巨大火球)   2018-03-11 19:56:39
大家好,第一次在這發文,請多多指教~
我之前在上過jserv大大的線上課程時,
聽到宅色夫極力推薦寫C的人都該先去讀讀規格書,搞懂C的真正內容
於是我就印了一本C11的comittee draft(n1570),決定把Library章節之前的讀完。
但是讀到40頁的時候,我發現雖然我在C上面自認有一定的基礎,也做過一些開發。但是規
格書中很多地方很難光從文字去理解它的內容,想要看一些實際的例子,但卻找不到資源(
也怕找到錯的),也怕自己用錯的方式測試。
再加上像jserv老師所講的,C的設計哲學是為了Unix而寫的。但是我對於concurrency以及
Linux kernel方面也不太熟,在規格書上讀到這方面的內容都直接讀過去。
想要請教一下各位大大,我想要真正讀懂規格書,該如何下手,或有什麼輔助的資源呢?
感謝各位以及jserv大大的貢獻!!!
作者: Hazukashiine (私は幸せです)   2018-03-11 20:29:00
把字典拿來啃的概念?我都隨便看看有個印象要用的時候再仔細看
作者: TWkobe (中華柯比)   2018-03-11 20:42:00
他的意思是叫你常常查 不是直接拿來看
作者: Lipraxde (Lipraxde)   2018-03-11 21:07:00
你要步入zzss2003的後塵嗎?
作者: loveflames (咕啾咕啾魔法陣)   2018-03-12 00:23:00
programmer跟language lawyer是不同的
作者: MOONRAKER (㊣牛鶴鰻毛人)   2018-03-12 03:23:00
噗 zz同學果然不負眾望成為底部jserv很厲害 但是這個建議照著硬幹實在太不健康這種東東即使寫很久也不一定能全懂 比較像C語言體檢
作者: loveflames (咕啾咕啾魔法陣)   2018-03-12 07:21:00
zz的例子是?
作者: Archier (昨日洨篤)   2018-03-12 12:34:00
zzss怎麼呢?
作者: Caesar08 (Caesar)   2018-03-12 12:35:00
對程式有一定興趣與了解後,再考慮是否要讀規格書programmer跟language lawyer是不同的
作者: jaid (jaid)   2018-03-12 13:39:00
我是覺得規格書本來就不是給一般人讀的 真的要唸還是要夠厚的底子
作者: notBeing (read and be read)   2018-03-12 16:15:00
試著利用規格書來回答你對C語言的疑問:為什麼可以,為什麼不行
作者: littleshan (我要加入劍道社!)   2018-03-12 21:12:00
C 是為了開發 Unix 系統而設計的那個年代 (197x) 還沒有 Linux
作者: remember (人老也有天使收)   2018-03-12 23:58:00
http://blog.linux.org.tw/~jserv/archives/001583.htmljserv十多年前的文章,小弟不否認從他的心得發表可以學到不少東西但是他當時的文章常常有種自傲參雜自卑的感覺,看起來心情頗複雜,常會覺得幹嘛這樣規格書可以解釋為什麼 static variable 為什麼初始值會是 0 XD
作者: tinlans ( )   2018-03-13 16:43:00
規格書主要是給專門教 C 語言的老師、發明程式語言的學者還有我們這種做 compiler 的人讀的。一般人大都是有疑義才會去查,但通常也是查得一頭霧水。因為它是 bottom-up從細節開始往上講,但是查閱的時候通常是 top-down,然後因為 top-down 的時候不知道各種細節名詞,就會很痛苦。因此才會出現「應該要把規格書讀過一遍」這種建議吧...至於 jserv 這人給的建議,只能說正規訓練方式不是這樣,他本身成長的路線比較崎嶇,不一定每個人都要走這陡坡要啃那本書,基本上也是要修完資工大學部主科,包括作業系統、系統程式、程式語言(非程式設計)、編譯器等等的,才會比較有感。jserv 本人有走另外的路線先摸過差不多的東西,所以他碰到的時間點才剛好可以直接讀吧。static variable 初值是 0 應該讀 APUE,古早時期程設常用的課本之一,那邊就會講 C 程式的 runtime environment板上一直有人大推的那本程式設計師的自我修養也是該在讀規格書之前讀的。我不確定是 jserv 有少講前提條件還是你少看,就像某樓講的,這樣讀其實不健康。
作者: wvwvwvwvwv (殺死丁力這個雜碎a~)   2018-03-13 17:11:00
作者: s0914714 (YA)   2018-03-13 17:23:00
jserv是說有些人喜歡在那try老半天,得到結果很開心可是有可能是未定義行為或者是跟編譯器有關這時候直接翻規格書是最快途徑如果只懂皮毛 翻規格書其實沒啥用拉
作者: tinlans ( )   2018-03-13 18:46:00
這說法跟原 po 第三行寫的出入有點大啊 XD

Links booklink

Contact Us: admin [ a t ] ucptt.com