1
我的值爲seconds
,簡寫爲0
或60
,我想以00:00:00
的格式打印它。因此,例如,60秒將顯示爲00:01:00
。如何在C中的數字前添加0進行格式化?
所以我有一個價值觀:
unsigned long long sec;
unsigned long long min;
unsigned long long hr;
unsigned long long t;
和我這樣做:
//pass in value of seconds
hr = sec/3600;
t = sec%3600;
min= t/60;
sec = t%60;
char *colon = ":";
printf("%llu%s%llu%s%llu\t", hr,colon,min,colon,sec);
這部分打印我想要的東西,像0:1:0
,從前面的例子。然而,如果它只有1個字符長度,我需要在前面加一個0 ....我能想到的唯一方法是轉換爲字符串,如果長度爲1,則在開始時將字符串合併爲零,但我覺得就像有更好的方法......我只是不知道它。任何幫助將不勝感激,謝謝!
謝謝!!! :)所以基本上,這個字段的長度應該是2,如果不是0,那麼它的起始位置就是0,直到它變爲2. – ocean800
@ ocean800這是正確的。 – dbush
謝謝!將接受... 9分鐘 – ocean800