如何在c++的main函数之外使用int argc,char *argv[]

visual How to use int argc,char *argv[] outside of main function in c++?

本文关键字:argc int char argv c++ main 函数      更新时间:2023-10-16

我在c++中编写代码时遇到了一个问题。我在main函数之外使用了int argc,char *argv[],它告诉我它们没有定义。
我试图使用extern,但它没有帮助。有人能帮我一下吗?谢谢你!

extern int __argc;
extern char **__argv;

尝试设置一个全局变量,或者将argcargv的值传递给您的函数。

方法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);
}