C++输出及程序调用问题

如何在C++程序A里打开程序B后 往程序B里输出字符或数字

例如:程序A代码

system("start B");
\\往程序B中输入1

程序B代码

int a;
cin>>a;
if(a==1)
    \\dosomething......
    \\再告诉程序A自己运行结束 或者给程序A返回字符 但是在这些过程中不能影响程序A的运行进度

3个回答

没有必要,可以这样:
A程序
system("B.exe 1");
B程序
int main(int argc, char *[] args)
{
char *param = args[1];
这里得到参数,然后下面你来判断
}

JonathanYan
JonathanYan 回复LingFunny: 这种程序中两个操作分开执行属于异步操作,一般通过多线程实现
9 个月之前 回复
JonathanYan
JonathanYan 回复LingFunny: 你这个可以用多线程实现
9 个月之前 回复
weixin_44115751
LingFunny 就是说调用其他程序时不影响主程序的运行
9 个月之前 回复
weixin_44115751
LingFunny 我是想完成一个能够在后台延迟 主程序不用等待的功能 后台延迟一到再往主程序的面板上输出字符
9 个月之前 回复
weixin_44115751
LingFunny 我是先用了程序A使用system("B.exe 1");运行B,并输入一个字符1,之后程序B里判断如果输入是1,则system("C.exe");打开程序C,然后程序C功能是输出一个1,最终却在程序A的面板输出了一个1
9 个月之前 回复
caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 回复weixin_44115751: 不麻烦,用 atoi(str) 转换下就是 int
9 个月之前 回复
weixin_44115751
LingFunny 不过如果是int类型的话就有点麻烦了吧
9 个月之前 回复
weixin_44115751
LingFunny 所以说 B.exe后面的1就是输出内容喽?
9 个月之前 回复

你这个涉及到进程间通信,需要了解管道方面的知识,不过如果只是传入初始化值可以用一楼的方法
B.exe后面的各个参数逗号分开,每个变量会自动以字符串的形式存入args,总变量数会存入argc。
具体将各个参数从字符串转化成对应的数据类型需要自己处理。

JonathanYan
JonathanYan 回复LingFunny: 一楼的int main(int argc, char *[] args)里面提到了argc和args,我也提到了一楼内容,麻烦题主仔细看回答
9 个月之前 回复
JonathanYan
JonathanYan 回复LingFunny: B.exe后面的各个参数逗号分开,每个变量会自动以字符串的形式存入args,总变量数会存入argc
9 个月之前 回复
weixin_44115751
LingFunny 能请问下这个argc和args分别是什么吗
9 个月之前 回复

A程序:

图片说明

B程序:

图片说明

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐