首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >定义自己的主函数参数argc和argv

定义自己的主函数参数argc和argv
EN

Stack Overflow用户
提问于 2009-10-05 12:47:07
回答 4查看 21.7K关注 0票数 30

我想创建一个QApplication类型的对象,它需要主函数参数argc和argv作为输入:

代码语言:javascript
复制
QApplication app(argc, argv);

因为我在一个用户定义的函数中,不能访问main函数,所以我想自己定义这个参数。我已经尝试了几种方法,但我不能正确地进行类型转换。我的上一种方法也不起作用:

代码语言:javascript
复制
int argc = 1;
char **argv; 
char arguments[1][12] = {{"cgalExample"}};
argv = arguments;

谢谢你的任何提示。

EN

回答 4

Stack Overflow用户

发布于 2009-10-05 12:53:52

为什么你要关心argv中的文本大小,我会让编译器来做:

代码语言:javascript
复制
int argc = 1;
char* argv[] = {"Hello Qt!"}; // exactly as it is defined in main
票数 4
EN

Stack Overflow用户

发布于 2009-10-05 20:55:00

不如..。

代码语言:javascript
复制
int argc = 2;
const char* argv[] ={"program","first-argument"}; 

...or如果你需要它们是非常数...

代码语言:javascript
复制
int argc = 2;
char* argv[] ={strdup("program"),strdup("first-argument")}; 
票数 3
EN

Stack Overflow用户

发布于 2009-10-05 13:11:47

尽管C和C++标准都不要求这样做,但大多数编译器将main的参数作为_argv和_argc提供给您。如果内存服务,POSIX需要这样做。无论如何,你需要使用类似这样的东西:

代码语言:javascript
复制
extern int _argc;
extern char *_argv[];

然后你就可以像平常一样使用它们了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1519885

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档