编码:
#include <stdio.h>
#include <stdlib.h>
void test_print()
{
printf("test print\n");
}
int main()
{
test_print(1,2);
return 0;
}
虽然 main 中 test_print 的调用者与该函数的定义有不同的参数数量,但代码可以很好地工作,但是如果将其更改为 c++ 版本,则会出现编译错误“函数参数太多......” . 为什么C允许函数的参数不匹配调用,我们什么时候可以使用这种调用方式?以及为什么它在 c++ 中被禁止。
系统 ubuntu 11.10
编译器:gcc 4.6.1