2015-10-16 39 views
3

當我用printf這樣的:Ç - 的printf - 除去前導零

printf("%.*ju ", size_length, (uintmax_t) thing->fts_statp->st_size); 

它增加了前導零以使thing->fts_statp->st_size長度size_length(這是有些可接受的,因爲它的正確的大小,但在視覺上無吸引力)。有沒有辦法打印大小信息與printf不這樣做?

編輯更多信息:

目前它打印這樣的:

00012 

00234 

51234 

01203 

00001 

我想它打印

12 

    234 

51234 

1203 

    1 
+0

也許你可以考慮一下showin g是它目前的樣子以及你想要它的樣子的例子。否則,你得到的任何答案都可能被別人對你的描述的解釋所歪曲,即使描述是清楚的,這些解釋並不總是成功。 – mah

+0

@mah剛剛編輯它,謝謝你的建議 – user3475234

+0

在C中不是一個領先的0八進制表示嗎? – MohitC

回答

2

如果你只是想空間填充:

printf("% *ju ", size_length, (uintmax_t) thing->fts_statp->st_size);