我想在字符串的開頭添加零。我正在使用格式說明符。 我的輸入字符串是「你好」 我想輸出爲「000hello」。C格式化的字符串 - 如何使用sprintf將前導零添加到字符串值?
我知道如何做到這一點整數。
int main()
{
int i=232;
char str[21];
sprintf(str,"%08d",i);
printf("%s",str);
return 0;
}
輸出將是 - 00000232
如果我字符串做同樣的。
int main()
{
char i[]="hello";
char str[21];
sprintf(str,"%08s",i);
printf("%s",str);
return 0;
}
輸出將是 - 個招呼(3前導空格)
爲什麼它是整數的情況下給予的字符串和零的情況下,空間?
的printf( 「000000%S」,helloStr) – schil227
我會做的是有一個數組,並且所有的元素設置爲 '0' ,除了空終止符的最後一個。然後在適當的地方複製你的字符串(提示:使用'strlen')並打印出來。或者,有一個循環打印出正確數量的'0',然後打印字符串。 – AntonH
*我正在使用格式說明符。我的輸入字符串是「你好」*。請發佈顯示問題的[Minimal,Complete和Verifiable示例](http://stackoverflow.com/help/mcve)。在問題**中顯示輸入,預期輸出和實際輸出**。 –