【发布时间】:2009-05-05 02:54:32
【问题描述】:
我创建了一个名为 test 的程序:
#include<stdlib.h>
#include<iostream>
int main()
{
std::cout<<system("..\\add\\debug\\add.exe 4 8");
while(true);
return 0;
}
add.exe 包含
#include<stdlib.h>
int main(int argc,char **argv[])
{
int n=((unsigned)argv[1]);
int m=((unsigned)argv[2]);
return(n+m);
}
所以当我运行测试时,我得到了
6841420
尝试使用参数 4 和 8 进行测试运行 add,并让 add 返回这些值的总和 (12),然后 test 会将其显示到屏幕上。我是如何得到 6841420 的,我该如何解决?
【问题讨论】:
-
您可能还需要在程序中进行一些错误检查,以确保实际上已将 2 个参数传递给您的程序。像... if(argc == 3) ... 一开始就可以了。
标签: c++ parameters