除了 `%d`,还有哪些常用的格式控制符号?如 `%f`、`%s` 等分别代表什么?
时间: 2024-10-06 13:02:59 浏览: 22
在C语言中,标准库中的`printf()`和`sprintf()`函数使用格式控制符来指定输出或字符串格式化的方式。除了 `%d`,还有许多其他类型的格式符,这里列举一些常见的:
1. `%c`: 用于整数值表示单个字符。例如,`printf("%c", 'A')` 输出字符 'A'。
2. `%s`: 用于字符串。你需要提供一个指向内存中的字符数组的指针,它将打印整个字符串直到遇到空字符('\0')。例如,`printf("%s", "Hello, World!");`
3. `%f` 或 `%.nf`: 用于浮点数(通常是double类型)。`%f`默认显示6位小数,`%.nf`允许指定小数位数,比如`printf("%.2f", 3.14159)`会输出 `3.14`.
4. `%e` 或 `%E`: 类似于 `%f`,但科学计数法,`%e`用小写'e'表示,`%E`用大写'E'表示。
5. `%g` 或 `%G`: 根据数值大小自动选择 `%f` 或 `%e` 的形式。
6. `%p`: 打印地址,以十六进制表示。
7. `%o`: 十进制转八进制。
8. `%x` 或 `%X`: 十进制转十六进制,`%x`用小写字母,`%X`用大写字母。
9. `%u`: 十进制整数,无符号。
10. `%lu`, `%llu`, `%ull`: 分别对应不同大小的无符号长整型。
11. `%lld` 或 `%llu`: 对应long long和unsigned long long。
12. `%ld` 或 `%lu`: 对应long和unsigned long。
13. `%t` (Unix扩展): 时间,类似于 `strftime()` 函数的格式。
这些只是常见的一些例子,还有很多其他格式控制符,具体取决于你的需求。例如日期时间格式 (`%Y-%m-%d %H:%M:%S`) 和宽度填充符(`*`,`#`等)也是常用的一部分。如果你有特定的格式需求,请告诉我,我可以更详细地解释如何应用它们。
阅读全文