带有宽度修饰符的printf无法打印该值
printf with a width modifier fails to print the value
在C++程序中,在使用VS2013的Windows 7和使用g++4.6的Ubuntu 14.04.1下,我对printf()的操作感到困惑。
使用第二个宽度修改器,可以打印一个空格而不是0。
当设置为另一个值时,例如-1,它会打印它。如果没有修饰符,它会按预期打印0。
我把实际的、相关的代码粘贴到另一个程序中,它的行为也是一样的。
可能是什么问题?
#include <stdio.h>
int main(){
int x = 1, z = 0;
printf ("%2.d: %2.dn", x, z); // fails to print 0
printf ("%2.d: %dn", x, z); // 2nd %2. absent, prints as expected
return 0;
}
输出:
1:
1: 0
点应指向左侧
#include <stdio.h>
int main()
{
int x = 1, z = 0;
printf ("%.2d: %.2dn", x, z); // fails to print 0
printf ("%.2d: %dn", x, z); // 2nd %2. absent, prints as expected
return 0;
}
输出:
01: 00
01: 0
相关文章:
- Printf 命令不打印时添加了查找常见除数的新代码
- cout 打印不准确的结果,printf 打印准确的结果
- 如何使 printf 以与 NSLog 相同的方式打印字符缓冲区?
- printf 语句在调试期间未在控制台上打印
- 如何使用C 中的printf打印数字列表
- 要在不使用cout的情况下打印某些内容,请使用printf或puts()
- printf() 混淆 - 尝试打印字符串时打印 (null),打印缓冲区时打印正确的值
- C++printf打印加倍读取为0
- Printf()-打印字符限制
- 在打印相同的变量时为 cout 和 printf 获取不同的输出
- C++类型包装器 printf 打印错误的浮点值
- 带有宽度修饰符的printf无法打印该值
- 如何在c++中使用printf打印std::string数组
- 如何使用 printf 打印"%"字符
- 为什么 printf 不在这里打印
- 我可以使用 printf() 打印类的对象吗?
- 如何从java程序中打印.exe printf()消息
- 打印n个空格字符-(f)printf格式
- 如何让 CUDA 的 printf 打印到任意流?
- 当printf打印任意多的行时,freopen只打印一行(c++)