24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 464  |  回复: 9
当前主题已经存档。
【有奖交流】积极回复本帖子,参与交流,就有机会分得作者 fran_lin 的 10 个金币
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

fran_lin

金虫 (小有名气)

[交流] 【求助】请教高手(完结)

最近在忙于编程,一直被一个问题困惑!
在linux下,可执行文件a利用system命令调用其他目录下的可执行文件b,在b中由一个语句是创建新文件A.out,结果系统默认在可执行文件a所在的目录下创建了新文件A.out。请问如何在文件a中调整,使新文件A.out能在文件b所在的目录下创建。
前提:可执行文件b不可修改。
哪位大侠明白,请帮帮忙,万分感谢!!!!!!

后记:::::
首先要感谢magic7004 和tjyl 专家顾问的指导,自己的程序正在运行过程中,不过,从目前看来,两位专家顾问的建议和指导是正确的!在这里万分感谢!
我自己其实是个程序方面的菜鸟,应版主做个正确解决方案的完整描述的提议,也为了回报各位虫友,我把自己的问题和解决方案做一个完整的描述!

问题:在linux系统下,可执行文件a利用system命令调用其他目录下的可执行文件b,在b中有一个程序语句是创建新文件A.out,结果系统默认在可执行文件a所在的目录下创建了新文件A.out。请问如何在程序文件a中做调整,使新文件A.out能在文件b所在的目录下创建。
前提条件:可执行文件b不可修改。这里主要是文件b的修改工作量很大,所以想尽量从程序文件a上作修改!
说明:system命令是调用一个新的进程(子进程)来执行文件b,这个新的进程将执行文件a的进程(父进程)的环境变量继承过来,默认的当前目录也继承过来了,所以文件b的默认目录就是文件a的默认目录,所以也就出现了我这样的问题!


解决方案:有个chdir(“目录”)函数,括号里面的目录就是填写可执行文件b的目录,将这条语句放在system()命令之前,这样子进程继承的就是文件b的目录,默认的生成文件也就是在自己的目录下生成,然后再system命令之后将目录改回来,借用一下专家顾问magic7004的话就是:
chdir(b的目录);
执行b;
chdir(a的目录);


自己的症结所在:我也曾在网上搜索这样的问题,但是由于自己是一个新手,自己的关键词用的不准确,再加上我的问题不是常见问题,所以没有找到正确答案,而且在百度,Google这样的搜索工具上,我的问题所搜索来的结果全被那些常见问题的答案替代了。

再次感谢magic7004 和tjyl 这两位专家顾问,也感谢所有热心的虫友!

[ Last edited by fran_lin on 2010-3-12 at 08:55 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yaohoo

新虫 (初入文坛)


jjdg(金币+1):欢迎新虫 2010-03-01 20:11
可执行程序b 是否可转以加参数?如果不能加那就麻烦了
3楼2010-03-01 16:20:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 10 个回答

yalefield

金虫 (文坛精英)

老汉一枚

这是想偷偷地用B程序啊!
2楼2010-03-01 15:01:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hakekill

木虫 (小有名气)


jjdg(金币+1):感谢提供 2010-03-01 20:12
在b所在的目录执行a试试看
4楼2010-03-01 18:54:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fran_lin

金虫 (小有名气)

引用回帖:
Originally posted by yalefield at 2010-03-01 15:01:06:
这是想偷偷地用B程序啊!

不是了,主要是B程序很大,而且是用fortran编辑的,我不是很懂,处理起来很麻烦,所以不想改动它,
5楼2010-03-02 12:18:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 一志愿厦门大学化学学硕307求调剂 +10 y7czhao 2026-03-26 10/500 2026-03-28 14:23 by 唐沐儿
[考研] 【求调剂】085601材料工程专硕 | 总分272 | +6 脚滑的守法公民 2026-03-27 6/300 2026-03-28 11:02 by gjlllb
[考研] 材料求调剂 一志愿哈工大总分298分,前三科223分 +5 dongfang59 2026-03-27 5/250 2026-03-28 04:53 by wxiongid
[考研] 求调剂 +4 零八# 2026-03-27 4/200 2026-03-27 18:07 by yu221
[考研] 材料与化工085600,总分304,本科有两篇sci参与,求调剂 +10 幸运的酱酱 2026-03-22 12/600 2026-03-27 16:08 by muchong357
[考研] 279 分 求调剂 +4 睡个好觉_16 2026-03-24 4/200 2026-03-27 15:05 by 醉在风里
[考研] 一志愿华东理工大学081700,初试分数271 +6 kotoko_ik 2026-03-23 7/350 2026-03-27 12:29 by 惠州彭于晏
[考研] 考研调剂 +10 呼呼?~+123456 2026-03-24 10/500 2026-03-27 11:46 by wangjy2002
[考研] 材料求调剂 +5 .m.. 2026-03-25 5/250 2026-03-27 11:08 by 不吃魚的貓
[硕博家园] 北京林业大学硕导招生广告 +6 kongweilin 2026-03-26 8/400 2026-03-27 10:18 by FF_16
[考研] 081200-11408-276学硕求调剂 +4 崔wj 2026-03-26 4/200 2026-03-27 08:04 by chemisry
[考研] 284求调剂 +11 junqihahaha 2026-03-26 12/600 2026-03-27 04:37 by wxiongid
[考研] 294分080500材料科学与工程求调剂 +4 柳溪边 2026-03-26 4/200 2026-03-26 21:14 by XPU李庆
[考研] 一志愿211 初试270分 求调剂 +6 谷雨上岸 2026-03-23 7/350 2026-03-26 18:55 by 不吃魚的貓
[考研] 一志愿北京化工大学材料与化工(085600)296求调剂 +9 稻妻小编 2026-03-26 9/450 2026-03-26 16:16 by 不吃魚的貓
[考研] 一志愿 南京邮电大学 288分 材料考研 求调剂 +3 jl0720 2026-03-26 3/150 2026-03-26 13:39 by zzll406
[考研] 总分293求调剂 +6 加一一九 2026-03-25 8/400 2026-03-26 13:30 by yujianx
[考研] 一志愿哈工大,085400,320,求调剂 +4 gdlf9999 2026-03-24 4/200 2026-03-25 23:01 by boxking200
[考研] 0854电子信息求调剂 +7 α____ 2026-03-22 9/450 2026-03-25 13:37 by α____
[考研] 一志愿山东大学药学学硕求调剂 +3 开开心心没烦恼 2026-03-23 4/200 2026-03-24 00:06 by 开开心心没烦恼
信息提示
请填处理意见