回 帖 发 新 帖 刷新版面

主题:getarg 和 iargc请教

在网上搜了下,给出这字解释:
1.4.15 getarg 和 iargc :获取命令行参数

getarg 和 iargc 访问命令行上的参数(在命令行预处理程序扩展后)。
1.4.15.1 getarg :获取命令行参数
该子例程的调用方式如下所示:
call getarg( k , arg )
k   INTEGER*4   输入  参数索引(0=第一个=命令名称)
arg  character* n  输出  第 k 个参数
n INTEGER*4  arg 的大小 大得足以容纳最长的参数
 
 iargc :获取命令行参数的数量
该函数的调用方式如下所示:
m = iargc()
返回值
 INTEGER*4  输出 命令行中参数的数量
 
示例:使用 iargc 和 getarg 获取参数的数量和每个参数:

demo% cat yarg.f
       character argv*10
       INTEGER*4 i, iargc, n
       n = iargc()
       do 1 i = 1, n
         call getarg( i, argv )
 1       write( *, ’( i2, 1x, a )’ ) i, argv
       end
demo% f95 yarg.f
demo% a.out *.f

1 first.f
2 yarg.f

它这里的命令行到底是什么意思呢?一直没搞懂。是程序名?

回复列表 (共2个回复)

沙发

在看别人写的将矩阵转化为稀疏矩阵的代码。直接来了这么一句:
num=10
if (iargc() .gt. 0) then
call getarg(1,ifile)
iunit = 8
open(unit=iunit,file=ifile)
else
iunit = 5
endif
真不明白这是干嘛的

板凳

命令行不是 Fortran 的概念,而是操作系统的概念。

例如 DOS,Linux,Windows 都有命令行的概念。只不过 windows 把命令行图形化了,很多人不直接接触。

百度 google 均能搜索到它的介绍。

我来回复

您尚未登录,请登录后再回复。点此登录或注册