你如何在C中显示“%5d”?
如何在C中显示字符串“%5d”? 我尝试在百分比前加一个反斜杠,但它不会打印(并发出警告)。 我试过谷歌搜索但无济于事。 我想这对我来说太宽了,无法找到具体的答案。
#include int main(void) { int test = 40; printf("\%5.1d %5.1d", test); //this is the one printf("%5.1d", test); return 0; }
有帮助吗?
要打印%
try printf("%%")
;
这很有效
printf("%%5.1d %5.1d", test);
使用double% – printf("%%5d")
。
作为另外两个(至少)完全正确的答案的替代,您也可以使用这样的fputs()
:
#include int main(void) { int test = 40; fputs("%5d ", stdout); printf("%5.1d\n", test); return 0; }
请注意,我在输出中添加了换行符; 这很重要,因为在输出换行符之前输出不会刷新到终端。 fputs()
请注意,我使用了fputs()
而不是puts()
因为puts()
会发出您不想发出的换行符。
但是,了解在printf()
和scanf()
函数系列中使用双倍%
实际百分比的一般解决方案将为您的未来做好准备。
或者你可以做printf("%s", "%5d")
:)我明白这是一种迂回的方式,其他答案中描述的更好,但只是提到这也是一种可能性。