小编O1G*_*O1G的帖子

如果我 printf 一个没有匹配参数的整数,具体决定输出的是什么?

例如,当我的代码如下所示时,对于 a = 0,我得到 -1301113336,对于 a = 1 到 99,得到 -1266657529。

#include <stdio.h>

int main()
{
    int a;
    for (a = 0; a < 100; a++)
    {
        printf("\n%i");
    }
}
Run Code Online (Sandbox Code Playgroud)

当行为因编译器而异时,这是某种未定义的情况吗?如果我使用 gcc,这些数字来自哪里,为什么每次迭代都不会改变?

c printf

-3
推荐指数
2
解决办法
60
查看次数

标签 统计

c ×1

printf ×1