我想把argv [1]读成char *所以这就是我做的事情
using namespace std;
const char *myarg = NULL;
void Plots(char* file);
int main( int size_t argc, char* argv[] ) {
myarg = argv[1];
cout<<" this is a test "<<argv[1]<<endl;
Plots(argv);
}
void Plots(char* fileList){
cout<< argument passed correctly "<<endl;
}
}
但是,执行时我得到了
Error: Function Plot() is not defined in current scope :0:
答案 0 :(得分:4)
argv
是char *[]
,其实际用途是char **
。
你宣布了
void Plots(char * file);
Plots()
的参数是char *
。
Plots(argv);
这会尝试将char **
传递给以char *
为参数的函数。
此外,虽然您声明了
void Plots(char * file);
然后你继续并定义了
void Plot(char* fileList)
此外:
cout<< argument passed correctly "<<endl;
这里缺少引用。
所以,这里有三个不同的错误。