[問題] 新手宣告變數的疑惑

作者: ny397789 (bi)   2015-04-29 15:54:43
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
C
問題(Questio
我是一個C 語言的初學者,沒有一點底子
我的問題感覺有點基本.....(書上寫的有點不懂...)
就是,假使我設
int num,s
s=100
num=s+1
num=s+2
為什麼num 可以 等於2個常數呢??
我的想法是:宣告一個變數,然後編譯器會給一個空間(4byte) 再寫入常數(s+1)
那還有一個s+2 寫在哪??(空間內已經是s +1)
如果是在一個變數,那總共會變成8byte嘛??
如果這樣的話,不就從頭到尾都用同一個變數就好...?
理解力有點差,請各位見諒
作者: TobyH4cker (Toby (我要當好人))   2015-04-29 15:56:00
覆蓋這是assignment,num就是固定一個int的空間,你放什麼進去就會是什麼
作者: azureblaze (AzureBlaze)   2015-04-29 16:02:00
C的 = 不是數學上的 =C的=意思是把右邊的值寫到左邊的變數裡
作者: k387259 (台灣李宏感)   2015-04-29 16:50:00
用英文解釋 =:assign ==:equal
作者: ny397789 (bi)   2015-04-29 20:14:00
了解了 謝謝~~
作者: azureblaze (AzureBlaze)   2015-04-29 21:07:00
==:is_equal 比較正確,大部分程式語言都沒有equal這種constaint式的語法
作者: adrianshum (Alien)   2015-05-01 19:08:00
樓上:Haskell 等的 functional language

Links booklink

Contact Us: admin [ a t ] ucptt.com