以下代码:
bash
给出 200 ..... 100 作为输出。 有人可以解释如何在没有datalist的情况下使用printf
答案 0 :(得分:1)
它在编译时提供警告(警告:格式参数太少),and is not documented,因此它是未定义的行为,不应使用。不同的编译器可能有不同的行为,行为甚至可能在同一编译器的版本之间发生变化。
请尝试在Wikipedia上阅读相关信息。
答案 1 :(得分:0)
这是堆栈中的一些垃圾值,因为您还没有提供任何整数参数。 printf()
函数不知道没有参数存在,它将搜索相关的堆栈位置并打印出有的内容。正如Robadob的回答中所提到的,行为将根据编译器而改变。