在用c ++编写代码时遇到问题。我在主函数之外使用了int argc,char *argv[]
,它告诉我它们没有被定义
我试过使用extern
但它没有用。
有人可以帮我这个吗?谢谢!
extern int __argc;
extern char **__argv;
答案 0 :(得分:6)
尝试设置全局变量,或将argc
和argv
的值传递给您的函数。
方法1:
int argc;
char **argv;
void some_other_function() {
std::cout << argv[0] << "\n";
}
int main(int ac, char **av) {
argc = ac;
argv = av;
some_other_function();
}
方法2:
void some_other_function(int argc, char **argv) {
std::cout << argv[0] << "\n";
}
int main(int ac, char **av) {
some_other_function(argc, argv);
}