作者:
Hatred (╮(⊙_⊙∥)╭)
2015-03-29 21:54:47※ 引述《ckkpolice (諸羅城坎)》之銘言:
: 寫程式的風氣好像越來越盛行
: 某些感覺用不到程式語言的科系
: 經了解後還是會加減學一點
: 有的則被系上硬性規定成必修
: 近來看了幾篇網路文章也把寫程式拱成未來的全民運動
: 難道趨勢漸漸轉變為寫程式的風氣嗎
: 洨魯我只能寫寫Hello World娛樂自己,其餘一竅不通QQ
: 程式學不起來的人,未來將會被世道淘汰掉??
: 有沒有全民語言─程式語言的八卦
各位小妹、pavone、30cm、E cup、溫拿、高富帥、勝利組、真強者,
大家好!打給後!胎嘎侯!AV8D!
本魯的朋友告訴本魯,C語言裡面有所謂的pointer,其實pointer存的就是記憶體的位
址,你可以用各種方式操作一個pointer,比方說取出pointer所存的位址的資料(比方
說如果pointer存個1000,那你可以取得記憶體位址1000處所存的整數)。如果你有一個
pointer叫做ptr,那麼只要寫ptr++,就可以讓ptr自動指到下一筆資料,例如今天ptr
若被宣告成整數的pointer,也就是它所儲存的位址放的東西是一個整數,又若一個整數
佔據4個bytes,那"ptr++"這個動作的結果就是使ptr存的值變成1004(假設本來是1000)
,也就是下一個整數的位址。
又有所謂的generic pointer,也就是不限定型態的pointer,它存的可以是一個整數的
位址、一個字元的位址等,通通都可以。跟作業系統要記憶體的system calls(中文翻
成系統呼叫)如malloc、calloc等,都是傳回generic pointer。
以上都沒有八卦,八卦是pointers雖然強大,但也是很多錯誤的來源,所以有許多教程
式設計的老師們會教學生「盡量不要用pointer,除非用了相當有好處」。舉例來說,
如果我要造一棵樹,其中除了最底下的節點外,每個節點都有兩個孩子,也就是我要的
樹長這樣:
a
/ \
b c
/\ /\
d e f g
這種樹就可以用pointers來形成,其中節點a含有兩個pointers,分別指向節點b和節點c
(也就是該兩pointers儲存節點b和節點c在記憶體當中的位址),節點b則含有兩個
pointers,分別指向節點d和節點e... 這樣的一棵樹其實用所謂的array來表示更方便,
也就是節點a、b、c、d、e、f和g在array中的index分別為0、1、2、3、4、5和6,這樣
就可看出來,在array中index為i的點的上一代就是index為(i-1)/2(無條件捨去小數)
的點,其實很方便der。
客怒使(Knuth)表示程式設計是一種藝術:
http://www.paulgraham.com/knuth.html
以上都是本魯的朋友提供,本魯看不懂,只是要賺P幣而已。
作者:
Geepie (雞排哥)
2015-03-29 21:56:00我理工宅 我不懂呵呵 C有用(當基礎)C++的指標很少用到
作者: a77942002 2015-03-29 21:56:00
100001110110101111011111100110010111001100100110111
作者: xinyuxiao (果果子) 2015-03-29 21:56:00
嗯嗯對啊推
作者:
EEERRIICC (大尾é¯è›‡)
2015-03-29 21:56:005樓跟10個男人一起queue
作者:
blaz (開花大叔)
2015-03-29 21:56:00你知道這算離題文嗎
作者: ferocious 2015-03-29 21:57:00
喔...所以你貼這個來教 都懂得八卦鄉民?
作者: voyhanxu 2015-03-29 21:58:00
唸得很累吼! 吃個雞排吧
作者:
L0v35 (æ˜¯é›¶ä¸æ˜¯æ)
2015-03-29 21:58:00int **a = new int*[87];
作者:
snow3804 (snow3804)
2015-03-29 21:59:00請用中文好嗎
作者:
techyo (三月時雨)
2015-03-29 22:01:00寫程式其實是種禪意 The Zen of Programming
作者:
netsphere (Ruby&Waku)
2015-03-29 22:01:00嗯
作者:
BBQ2591 (BBQ2591)
2015-03-29 22:04:00閱
System.out.println("Hallo world");
作者: modulation 2015-03-29 22:20:00
推
作者: yeh0416 (東哥) 2015-03-29 22:52:00
我資料結構學的亂七八糟 XD