怎样用.bat命令来给fortran可执行程序.exe的输入参数赋值?
有一个可执行的fortranexe程序,名为:name.exe,它的执行需要输入一个字符串char,一般的做法可以是直接执行name.exe,在弹出的cmd窗口输入这个字...
有一个可执行的fortran exe程序,名为:name.exe ,它的执行需要输入一个字符串char,一般的做法可以是直接执行name.exe,在弹出的cmd窗口输入这个字符串char,结束。但是我想写一个.bat文件,直接运行这个name.exe,并且直接读取字符串char,这个过程中不需要手动输入。请问,怎样编写这个.bat的命令。Ps:我只知道在.bat中运行name.exe直接输入name就可以,参数怎样到.bat里面才能直接传给nema.exe?就不懂了
展开
2个回答
展开全部
这个问题完全跟 Fortran 没有关系。windows 下的方法是这样:
新建一个文本文件,比如名字叫 char.txt,把他和 name.exe 放在一起。
在 char.txt 里输入你的字符串,保存。
在cmd窗口中输入 name.exe <char.txt
更多追问追答
追问
谢谢你的回答,不过我试了,在我的run.bat里面写入name.exe<char.txt,运行后并没有输出结果,我用来测试的fortran程序是要输出这个输入的字符串,现在没结果,说明办法行不通,不知道哪里出问题?Ps:用手工的输入可以输出结果,所以fortran程序不会有问题。
当然char.txt里面也按照你的说法,写入一个字符串。
请你继续指导,不胜感激!
展开全部
楼上的方法可行。其实还有一种方法也可以实现。
如果你有源码的话,可以这样
nofargv=nargs(); ! 获取参数个数
if (nofargv==2) then !有传入参数
call getarg(1,argv) !获取第一个参数
read(argv,*) input !把参数读入input
else !如果没有传入参数就提示用户输入
print*, "input the string"
read(*,*) input
end if
bat文件这样写: start name.exe string
如果你有源码的话,可以这样
nofargv=nargs(); ! 获取参数个数
if (nofargv==2) then !有传入参数
call getarg(1,argv) !获取第一个参数
read(argv,*) input !把参数读入input
else !如果没有传入参数就提示用户输入
print*, "input the string"
read(*,*) input
end if
bat文件这样写: start name.exe string
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询