Re: 請問c語言的int

看板Programming作者 (暗黑貴公子)時間17年前 (2008/05/30 17:58), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串4/5 (看更多)
※ 引述《quota@kkcity.com.tw (大改名片檔)》之銘言: : 基本上 : 第一個結果是對的,因為這是int型態變數,c語言不會自動轉換 : 可是問題在於第二個..為何會出現小數點? 基本上 第一個結果 (1.a) 也是錯的, 被印出來的是堆疊空間的數值 多印個幾次, 數值會相對變化 至於第二個結果 (2.a), 那是因為前面計算處理過 float b 加上有呼叫 printf(), 所以此值尚在堆疊中未被破壞, 因此才會印出 17.5 不然, 可以在印出 2.a 之前插入一行 printf("b=%f", b=0); 這時, 第二個結果 (2.a) 就會印出 0 這已經是老問題了 冏 -- 看的懂 x86 組語的話, 使用 gcc 編譯時可以加個參數 -S 產生反組譯碼 (AT&T 格式) 出來看就知道了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 58.86.136.1

05/31 01:32, , 1F
:D
05/31 01:32, 1F
文章代碼(AID): #18Fy_37a (Programming)
文章代碼(AID): #18Fy_37a (Programming)