Re: [問題] pow的問題in C
: 但是我的問題是 它在debug時會出現一個warning 不過結果是有正確地跑出來
: 看書上寫 好像是pow函數裡面的參數要用double型態表示(?!)
: 於是我把 a[i][j]=(1+i)*pow(10 ,j); 改成 a[i][j]=(1+i)*pow(10.0 ,j);
a[i][j]=(1+i)*pow(10 ,j);pow()出來的double,而a[i][j]是int,因為
有double變成int的問題,精度有降低的疑慮,所以有warning...
: 結果和上面的問題一樣 跑的出來可是也有warning
: 後來把 int a[10][4]; 改成 double a[10][4];後 是沒warning了
: 可是最後數字全變成0
改成這個樣子,是沒有warning了,但是
printf("%d\t",a[i][j]);這一行你可能沒有改%d成%f,所以出來是0
: 想請教各位這個warning到底是怎麼一回事?
: 謝謝!!!
--
只要相信,幸福就會如影隨形
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.70.244.101
討論串 (同標題文章)
Programming 近期熱門文章
PTT數位生活區 即時熱門文章