C++ c2660 函数不接受一个参数

2024年11月19日 01:30
有3个网友回答
网友(1):

把函数定义搬到main() 以前,或 在 main() 前 加 函数原型声明:
int GetFps(char*filename);
语法上 就应当对了。
-------------------------
filename 应当是输入参数,应当有存储单元。若从命令行拍入,可以写:

int GetFps(char *filename); // 函数原型声明
int main(int argc, char** argv)
{
char filename[120]; //定态数组,有存放单元
if (argc < 2) {
printf("\aUsage: %s filename\n",argv[0]); // 用法提示
exit(0);
};
strcpy(filename,argv[1]); //从命令行位置参数1获得名字
GetFps(filename);
return 0;
}
下面函数定义不变

网友(2):

查看函数cvCaptureFromFile()的原型定义,从错误信息来看,该函数的参数可能不止一个。

另外,调用该函数前,filename应该是含有文件名的字符数组,用一个不含有任何字符的字符串指针作为实参明显有误。

网友(3):

使用函数时要先声明该函数。

在main函数上面声明要使用的函数
int GetFps(char*filename);
int main(int argc, char** argv)
{
char*filename;
.....