c - 如何使用变量作为宽度修饰符而不输出零

标签 c

我输入了以下内容:

 printf("Original Value: %.*d\n", mover, value);
 printf("After change #%d: %.*d\n", ct, mover, value);

这是我的代码的输出:

Original Value:  1233456
After change #1: 0012456

根据更改后 #1 的其余代码计算出的值是 12456,因此我需要零不要位于更改后值的前面,但我仍然需要原始值的 6 与 6 对齐更改后的内容 1.有人可以告诉我我做错了什么吗? (移动者等于原始值的位数)

最佳答案

使用 %*d 获取不带前导零的输出。

关于c - 如何使用变量作为宽度修饰符而不输出零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22852289/

相关文章:

android - 当我添加新的 .c 文件时,Android Studio 通知我它不是项目的一部分

c++ - 无法绑定(bind)超过 1021 个端口

c - 关于数据类型的段错误?

c - 为什么常量存储在 C 内存映射的文本段中?

c - printf 的奇怪行为

c - 错误: Pasting formed with invalid preprocessing token

c - 尝试调整 sscanf() 以忽略\n 和\t

c - GCC 中的简单错误陷阱

c - 在 C 中使用两组坐标(纬度和经度)的轴承

c - 修改 Minix 3 调度程序