Re: [問題] 九個1乘九個1等於多少?已回收

看板MATLAB作者 (oomusou)時間15年前 (2009/04/16 00:05), 編輯推噓0(003)
留言3則, 3人參與, 最新討論串2/2 (看更多)
※ 引述《SiriusJinn (假斯汀)》之銘言: : ※ [本文轉錄自 C_and_CPP 看板] : 作者: SiriusJinn (假斯汀) 看板: C_and_CPP : 標題: [問題] 九個1乘九個1等於多少? : 時間: Wed Apr 15 22:33:03 2009 : 一開始是用labview寫的 : 發現答案是 12345678987654320 直覺應該是 12345678987654321 : 用c寫也是一樣 : ================================================ : #include <stdio.h> : #include <stdlib.h> : int main(void) : { : double a=111111111,b; : b=a*a; : printf("%.lf \n",b); : system("pause"); : return 0; : } : =============================================== : int64 會不夠嗎? : 用matlab試了一下,直接打111111111*111111111 值出不了,只好直接試大小 : =============================================== : ans = : 12345678987654320 : =============================================== : 不知大家有沒有什麼解決的辦法呢? : 感謝! #include <stdio.h> int main() { long long a = 111111111; long long b = 111111111; long long c; c = a * b; printf("%I64d", c); } 以上在VS2008測試成功 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.160.107.53

04/16 01:09, , 1F
long long 在早一點的版本好像沒有定義?
04/16 01:09, 1F

04/16 01:15, , 2F
第一次看到 long long 受教了!
04/16 01:15, 2F

04/16 07:34, , 3F
我在VS2005就用過long long,更早的就不確定了
04/16 07:34, 3F
文章代碼(AID): #19vWMw0x (MATLAB)
文章代碼(AID): #19vWMw0x (MATLAB)