gpt4 book ai didi

c - 嵌套 printf 语句的奇怪输出

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

好吧,我正在玩一段代码,试着理解一些技巧以及它是如何工作的,所以我不明白这段代码的输出

int i = 8;
printf("%d", printf("%o", i));

结果是 102,我不知道怎么算,我知道 8 在八进制系统中是 10,但最让我困惑的是当我像这样在 %o 之后放置空格时

printf("%d", printf("%o ", i));

现在,结果是 10 3,这是怎么回事?

最佳答案

Printf 打印到标准输出,并返回 int,打印字符数。所以你得到:

10 3

即:

10 是打印八进制 8 的评估内部 printf。

和 3,打印内部 printf 的“返回”值的评估外部 printf = 3 个打印字符。

关于c - 嵌套 printf 语句的奇怪输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40172734/

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