回答
您将得到垃圾值,因为您没有向printf()调用提供任何参数。
正确的代码将
printf("%d%d%d",c,b,a);
(获取号码引用的顺序)
但“垃圾”值可能确实是a,b和c的值;问题是实际打印的内容是未定义的。它确实可能是“3 6 9”,但也可能是其他任何东西。 –
正确 - 我想严格来说,“这是正确的输出”这个问题的答案是它没有定义。但是,我认为OP想知道是什么导致他没有想到的行为,而不是技术上正确但信息量较少的回应:) – ahnlak
@ ErnestFriedman-Hill本地变量存储在堆栈中。因此,当调用printf()时,它会在该堆栈中搜索其变量类型的_variable reference_。但是,如果没有提供任何变量名称,则无法将**格式说明符**与变量名称进行映射,然后直接从FIFO中按FIFO顺序获取该值。 –
正确的既不是你所描述的两个。由于没有值传递给printf
,因此只有格式化程序,当前堆栈中的任何内容(未定义)都会被传递。
该声明的正确输出是什么?
此代码调用未定义的行为,因此没有正确的输出。输出未定义。
该代码调用未定义的行为,因为您传递给printf
的格式字符串要求您传递比您提供的(0)更多的参数(3)。
- 1. 声明静态变量时的输出是什么?为什么?
- 2. 什么是最准确的;声明VS准备好的声明
- 3. 声明为async的方法的正确语法是什么?
- 4. 什么是声明
- 5. 什么是声明
- 6. 声明类对象的正确方法是什么?
- 7. 声明指向__far指针的正确方法是什么?
- 8. 将属性声明为false的正确方法是什么?
- 9. 获得Win32 p/Invoke声明的“正确”方法是什么?
- 10. SAML 2.0声明的正确格式是什么?
- 11. 使用webpack.DefinePlugin声明ENVIRONMENT_CONFIG&DEBUG的正确方法是什么?
- 12. 什么是Oracle 11g中的正确更新声明
- 13. 什么是声明静态可变值的正确方法
- 14. -servlet.xml和applicationContext.xml的正确配置声明是什么?
- 15. 在VB.NET中,表单的正确声明是什么?
- 16. 编写此更新声明的正确方法是什么?
- 17. 在SQL Server 2008中声明varbinary的正确方法是什么?
- 18. 声明这些变量最正确的方式是什么?
- 19. 什么是正确的网格列声明?
- 20. 什么声明是不正确的关于唯一索引
- 21. 声明HTML5文档类型的正确方法是什么?
- 22. 正由typedef声明什么?
- 23. 什么是'不是声明'?
- 24. 什么应该是正确的查询?
- 25. 什么应该是正确的SQL
- 26. logstash输入和输出的正确配置是什么?
- 27. 更改声明顺序的输出不正确
- 28. 在JUnit中声明正确的控制台输出
- 29. 下面的代码应该输出什么内容?它是否正确?
- 30. 什么是声明区
'printf(“%d%d%d”);'参数丢失 - 未定义的行为。 –
这是未定义的行为,并且有很多重复。 –