→ james732:你知道 s 的記憶體裡面存的是什麼東西嗎?10/27 11:54
其實關鍵就是這個
就像你知道的,float是個32位元長度的資料型態
在 float s = 1.3f; 之後
s 那塊記憶體其實長得像 00111111101001100110011001100110 這樣
至於為什麼,可以參考:http://zh.wikipedia.org/zh/IEEE_754
另外這個網址可以轉換:http://www.h-schmidt.net/FloatApplet/IEEE754.html
接下來這兩行
float* fp = &s;
printf("%d\n", *(int*)fp);
白話的講,就是:
把 00111111101001100110011001100110 用 int 來看
也就是用二進位的角度去看它,得到的數值就是 1067869798 了
可用這個網址換算:http://mistupid.com/computers/binaryconv.htm
float s = 1.3f;
float* fp = &s;
printf("%d\n", *(int*)fp);
這三行如果不容易閱讀,就把它寫成這樣:
float s = 1.3f;
float* fp = &s;
int* tmp1 = (int *)fp;
int tmp2 = *tmp;
printf("%d\n", tmp2);
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.117.171.46
→ james732:我想要開分身投禁止原文自刪,不然會覺得自己像白癡 orz 10/27 19:47
推 Dreamer77:感謝你! (因為我以為不會有人回答 所以就刪了XD) 10/27 19:52
推 loveflames:把二樓列入黑名單好了,以後來發問就無視 10/27 19:59
→ james732:沒那麼嚴重,畢竟他也不是第一個自刪的人 (嘆) 10/27 20:01
推 xatier:到底這個版自刪的風氣是什麼時候開始流行的 = =" 10/27 20:03
推 Dreamer77:XDD我完全不知道這板是不能自刪的orz... 10/27 20:04
→ james732:其實其他板也很常看到「如果○○○則自刪」的句子 10/27 20:04
→ sunneo:不曉得那些人為什麼問到會自刪 女朋友卻不是把到就自宮 10/27 20:04
推 loveflames:我知道某些人要到程式碼後會自刪,避免被抓包 10/27 20:18
推 loveme00835:我的文章打一半這篇就出來了~ 真是好人超!! 10/27 20:28
→ stupid0319:好像大部份文章都是問課本基本功的東西 10/27 21:22
推 nowar100:不知道也說的出來 好像我之前打的發文注意事項是假的 T_T 10/27 22:17
推 loveflames:置底標題也有,那些都看不到的話,想必板規也不會看了 10/27 22:23
→ loveme00835:刪掉的文一直標示未讀過~ 真得好討厭 ~"~ 10/27 22:36
→ james732:可以在看板列表按 v 會把所有的文章都標示為已讀 10/27 22:39
→ tropical72:何不放在發文格式中?這樣要跳過也不容易了吧? 10/27 22:40
推 loveme00835:太神奇了!! 我還一直在文章列表按 v ...XD 10/27 22:45
推 loveme00835:其實蠻好奇的, C_and_CPP 板感覺逛起來像問板 10/27 22:51
推 purpose:小孩不笨裡面,有個大陸人跟警察說,坐飛機時只被告知販毒 10/27 22:52
→ purpose:是死刑,不知道綁票也要被判死刑... 10/27 22:52