作者xxxx9659 (嘎嘎嘎嘎嘎)
看板C_and_CPP
標題[問題] printf 整數如何正確表示
時間Sat Feb 9 01:25:34 2013
請看以下程式
//定義 3 個 無號整數 a1, a2, a3
unsigned long long a1;
uint32_t a2;
uint64_t a3;
//這樣是正常用法... ?
printf("%llu", a1);
那 a2, a3 又要怎麼表達 (%lu, %llu, %lllu) ??
%llu 是不是無敵萬用解,管他任何的無號整數都可以用??
-----------------------------------------
再問一個問題
uint32_t i;
for(i = 99; i != (uint32_t)-1; --i){ //從 99 跑到 0 為止
...
}
我這樣寫是絕對正確的嗎? 程式拿到任何地方去編譯都對嗎?
如果不對要怎麼改? 改成下面的程式 我也覺得怪怪的....
for(i = 99; i >= 0 && i <= 99; --i){ //從 99 跑到 0 為止
...
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.36.12.177
→ akasan:PRIu32 PRIu64 , 不過要注意 c99 才有送XD 02/09 01:27
→ xxxx9659:喔喔喔 謝謝 維基百科好詳細 02/09 01:36
→ linotwo:for(unsigned int i = 99U; i <= 99U; --i) 02/09 01:39
→ xxxx9659:ok 之後我就這樣寫 02/09 01:44
※ 編輯: xxxx9659 來自: 114.36.12.177 (02/09 01:45)