问题描述
- 函数实参和形参个数不同,为什么能通过VC++6.0编译
-
函数定义如下:
void fun(char s[]){
....
}int main(){
char s[]=...,t[]=...;
fun(s,t);
...
}
为何能通过VC++6.0的编译,实际传递给fun的参数是s
解决方案
VC6 没有安装,但 VS2015 下肯定是编译无法通过的。
因为从语法上来讲,也肯定是编译不能通过的。
void fun(char s[]){
return ;
}
int _tmain(int argc, _TCHAR* argv[])
{
int s = 0;
char c = 0;
char ss[4]= {'a','b','c'};
char t[4]= {'e','f','g'};
fun(ss,t); // error C2660: 'fun' : function does not take 2 arguments
return 0;
}
时间: 2024-09-17 04:49:20