gpt4 book ai didi

c - 这个 "#"在这里做什么

转载 作者:太空宇宙 更新时间:2023-11-04 00:18:43 24 4
gpt4 key购买 nike

我想出了一个代码

#include <stdio.h>

int main()
{
int i = 1427;
double d = 1427.0;

printf("%#o\n", i);
printf("%#X\n", i);
printf("\n%g\n", d);
printf("%#g\n", d);
return 0;
}

给出输出:

02623
0X593

1427
1427.00

首先我认为 # 用于为输出添加前缀 0 但我错了,因为它在最后一个输出中的奇怪行为,它在小数点后打印零。
有人可以解释这个 # 是什么以及它在这里做什么吗?

最佳答案

# 标志具有不同的行为,具体取决于上下文。

如果它与 oxX 说明符一起使用,则该值前面有 00x0X

如果与a/Ae/Ef一起使用code>/F,或G,值总是以小数点结尾。

这种行为在网络上的多个地方都有很好的记录。搜索“printf”和可能的“格式说明符”通常会找到很多好的链接。这里有一些可以激发您的胃口:

关于c - 这个 "#"在这里做什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17579019/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com