コード:
#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