[問題] C語言中的 int

看板C_and_CPP作者 (TCK)時間13年前 (2011/04/21 01:05), 編輯推噓4(4014)
留言18則, 6人參與, 最新討論串1/2 (看更多)
各位好 ... 又有個問題想來請教各位了 老師今天說到 int ... 也是個很困惑的狀況下 int x = 4, float f = 2.9f, x int 4 x+f float 6.9f x+3.0 double 5.9 3L + f float 5.9f 3L + (int)f long 5L 我不知道什麼時候是 int, float, double, long ... 有什麼不一樣? 關於數字部分 ... 我不懂 為什麼 x + 3.0 會變成5.9f 整個開始有點困惑 ... 我知道要問老師... 但是這老師 ... 讓我很寒心-.- 另外他今天又有提到什麼 - - x 還有 + + x 或者 x + + 如果 int x = 3 那有什麼不一樣的狀況會發生? 我連google找文章來看都不知道要怎麼找 請各位幫忙我解惑一下吧! 感謝... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 192.64.1.242

04/21 01:27, , 1F
有用課本嗎? @@"
04/21 01:27, 1F

04/21 01:40, , 2F
變數宣告就是立即定義變數 定義變數就是在記憶體中挖個洞
04/21 01:40, 2F

04/21 01:41, , 3F
int挖4bytes(for 32bits target) double一律是挖8bytes
04/21 01:41, 3F

04/21 01:42, , 4F
我覺得他是不明白 int 和 float 的差異
04/21 01:42, 4F

04/21 01:43, , 5F
兩個蘿蔔坑不一樣大 怎麼相加? 把他們變一樣大摟~
04/21 01:43, 5F

04/21 01:46, , 6F
x是int在mem中長成 0000 0000 0000 0004
04/21 01:46, 6F

04/21 01:47, , 7F
f是float會長成...喔 請用VC一步一步追 反正長的不一樣
04/21 01:47, 7F

04/21 01:48, , 8F
你把 float轉int 必掉精準度 int轉float有機會保留
04/21 01:48, 8F

04/21 01:49, , 9F
把int轉成float 和另一個float相加 是比較優先的作法~
04/21 01:49, 9F

04/21 01:50, , 10F
再來要看立即值 3L 表示 這個3要長成long的格式
04/21 01:50, 10F

04/21 01:52, , 11F
2.9f 表示這個2.9要先轉成float格式再compile
04/21 01:52, 11F

04/21 01:53, , 12F
3.0 後面都沒有寫任何記號 compiler看到小數點預設用
04/21 01:53, 12F

04/21 01:53, , 13F
double下去編譯~
04/21 01:53, 13F

04/21 01:57, , 14F
- - x 是做兩次轉成負數,但我想你大概是要扯 x++ - --x
04/21 01:57, 14F

04/21 01:57, , 15F
有空白有差
04/21 01:57, 15F

04/21 02:24, , 16F
我猜是f+3.0
04/21 02:24, 16F

04/21 07:22, , 17F
抱歉 ... 如同樓上所說 ...是f ... 我筆記也抄x ...
04/21 07:22, 17F

04/21 07:23, , 18F
我跟同學對過 ... 我手殘跟眼殘... 抄錯
04/21 07:23, 18F
文章代碼(AID): #1Dhn9l7L (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1Dhn9l7L (C_and_CPP)