无法将argv传递给main

时间:2018-06-06 04:37:00

标签: c++

我是编码的初学者,下面是我的代码:

int main(int argc, char **argv) {
    int Function_Block(argc,argv);
//Other operations

Function_Block的定义如下:

int Function_Block(int argc,char* argv[]) {
    if(strcmp("1",argv[1])==0) {
        set_Flag = 1;
    }
    //Other Operations and return 0

我收到错误消息

error C2078: too many initializers

error C2440: 'initializing' : cannot convert from 'char **' to 'int'    

我检查了MSDN网站,但我没有真正按照其关于传递argv参数的描述。 任何调试或修复此信息的信息都会有所帮助。

1 个答案:

答案 0 :(得分:4)

您是否尝试在main内调用此功能?如果你是,你应该做点什么

int main(int argc, char **argv) {
   int a = Function_Block(argc,argv);
//Other operations

a将存储函数返回的整数。现在,您似乎在 main内声明了函数,这是不正确的。