c++给main函数传参数问题。

除了在命令行模式下给main函数传参数,还有别的方法吗?... 除了在命令行模式下给main函数传参数,还有别的方法吗? 展开
 我来答
yyjie999
2013-10-21 · TA获得超过199个赞
知道小有建树答主
回答量:197
采纳率:100%
帮助的人:182万
展开全部
当然,之所以要给main函数传递参数,是考虑多进程的情况。每一个main函数执行就是一个单独的进程。
比如
进程1启动进程2,就需要给进程2传参数。可以看看CreateProcess函数。
同样进程结束后,需要知道返回值,来判断子进程执行是否成功,所以main函数最好有返回值。
比如编译后生成a.exe
process 1:
do sosomething
// Linux和Window平台的CreateProcess会有不同,具体请搜索

ret = CreateProcess 2("a.exe", p1, p2, p3, ...)// p1, p2, p3会作为参数传给a.exe的main

if (ret != 0) {
process 2 failed.

}
...
do something
追问
你的意思是我在一个工程中使用了CreateProcess函数,就可以让另外一个工程中的main函数运行是吗?如果不在另外一个工程中给这个main函数传参数,只是运行这一个main,那就只有命令行模式是吗?
追答
是的,如果你通过main(argv, argc)的方式,想让argv得到赋值,就需要通过命令行的方式, 另外VC里面的项目->项目属性->配置属性选项可以赋值(当然这个是工具的问题,具体可搜索VC 命令行设置)。
另外,如果你想通过其他方式让main函数获得一些初始值,可以通过配置文件,注册表等等方式。
百度网友72165e1
2013-10-21 · TA获得超过2170个赞
知道大有可为答主
回答量:1369
采纳率:100%
帮助的人:430万
展开全部
有,在命令行下可以用程序调用磁盘上的其他可执行文件,如
system()
spawn...()
等等,详细可察看有关C库的函数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式