我在某处读到 printf 采用程序前两个赋值的值。可以给出任意数量的 printf。它们都只取前两个值。如果程序中给出了更多的赋值,那么 printf 将采用垃圾值。
我不这么认为,但它是在许多网站上给出的,所以只需要确认它
例如,如果您进行简单的 Google 搜索,"printf takes first two assignment as input"
就会发现有一些网站有示例面试问题/答案,例如:
预测以下输出或错误:
main()
{
int i=400,j=300;
printf("%d..%d");
}
答案:400..300
解释: printf 取程序前两个赋值的值。可以给出任意数量的 printf。
它们都只取前两个值。如果程序中给出了更多的赋值,那么 printf 将采用垃圾值。
这是正确的真实行为吗?还是依赖于实现?