[问题] 新手宣告变量的疑惑

楼主: 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