我从printf(“%d”)获得的输出是什么意思? [重复]

问题描述 投票:-1回答:2

此问题已经在这里有了答案:

我今天尝试了一个代码,发现printf(“%d”)仍然有输出。在我的计算机上,输出为“ 1487504216”。我想知道为什么得到输出以及输出的含义。以下是我尝试过的代码。

#include <stdio.h>

int main()
{
    printf("%d");

    return 0;
}
c printf stdio
2个回答
2
投票

printf("%d",...期望下一个参数是要打印的数字。您没有向其传递参数,因此它只会从堆栈中获取下一个数据,并认为它是要打印的变量。因此,您读取了一些垃圾数据并打印出来...


-2
投票

printf返回打印的字符数。在您的情况下,您会得到一个奇怪的数字,因为格式无效。 printf("%d", 74)将返回2,因为它正在打印2个字符。

© www.soinside.com 2019 - 2024. All rights reserved.