通常,在使用变量函数时,我们总是对预期输入的数量给出某种排序,但永远不知道传递了多少.
那么,当我向printf()
函数传递的参数超过所需数量时,编译器如何能够检测到呢?
以下是示例代码
#include <stdio.h>
int main()
{
printf("Hello World", 2);
return 0;
}
输出:
main.c: In function ‘main’:
main.c:6:12: warning: too many arguments for format [-Wformat-extra-args]
6 | printf("Hello World", 2,3,4);
| ^~~~~~~~~~~~~
Hello World
我使用的是以下在线编译器:https://www.onlinegdb.com/online_c_compiler