| 5 | 1/1 | 返回列表 |
| 查看: 2170 | 回復(fù): 4 | |||
studyhae木蟲 (正式寫手)
|
[交流]
【求助】Frotran如何直接從鍵盤讀取輸入?yún)?shù)? 已有3人參與
|
| RT,求高手指點(diǎn)。多謝。 |
至尊木蟲 (職業(yè)作家)
木蟲 (小有名氣)
金蟲 (小有名氣)
|
使用 CALL GETARG(n,buffer[,status])可以獲取命令行參數(shù)(即運(yùn)行程序時(shí)后面以空格隔開的參數(shù)) 我用gfortran編譯試過可以。 忘了在哪個(gè)網(wǎng)頁找到的,再次表示感謝。 n 輸入,整數(shù),INTEGER(2)。 參數(shù)的位置,命令本身的值為0: command arg1 arg2 0 1 2 buffer 輸出,字符串,Character*(*)。 返回的參數(shù)或命令: command arg1 arg2 0 1 2 CALL GETARG(1,arg) 則,arg="arg1" status 輸出,整數(shù),INTEGER(2),可選。 返回完成狀態(tài),如果錯(cuò)誤,返回“-1”;如果正常,返回參數(shù)字符串的長度。 如果輸入的n值小于0,或者大于參數(shù)的個(gè)數(shù),則報(bào)錯(cuò)! EXAMPLE: PROGRAM TEST INTEGER N1,N2 CHARACTER *20 NAME1 N1=0 CALL GETARG(N1,NAME1) WRITE(*,*) NAME1 N1=1 CALL GETARG(N1,NAME1) WRITE(*,*) NAME1 N1=2 CALL GETARG(N1,NAME1) WRITE(*,*) NAME1 N1=3 CALL GETARG(N1,NAME1) WRITE(*,*) NAME1 N1=4 CALL GETARG(N1,NAME1) WRITE(*,*) NAME1 END f77/gfortran test.f -o test test just try get argc haha 輸出: test just try get argc 對于ifort編譯器,getarg(n,string,status),有一個(gè)status變量,可以加,也可以不加。 對于C語言粉絲(說我那),可能會(huì)特別懷念main(int argc, char **argv)和C語言內(nèi)部非常方便的數(shù)據(jù)轉(zhuǎn)換。fortran也可以實(shí)現(xiàn)。 IARGC()就是獲取命令行參數(shù)數(shù)目的。 同時(shí),使用read和write語句可以方便地將命令行讀入的字符串賦值給整形或者浮點(diǎn)變量。 PROGRAM TESTGETARG CHARACTER*80 CMMDLINE INTEGER N,NN REAL FTEMP CALL GETARG(0,CMMDLINE,NN) N=IARGC() WRITE(*,*) CMMDLINE,N,NN,"FTEMP=",FTEMP CALL GETARG(1,CMMDLINE,NN) N=IARGC() READ(CMMDLINE,*)FTEMP WRITE(*,*) CMMDLINE,N,NN,"FTEMP=",FTEMP CALL GETARG(2,CMMDLINE,NN) N=IARGC() READ(CMMDLINE,*)FTEMP WRITE(*,*) CMMDLINE,N,NN,"FTEMP=",FTEMP END 運(yùn)行結(jié)果: ./testarg 123 4.5 ./testarg 2 9 FTEMP= -1.229246 123 2 3 FTEMP= 123.0000 4.5 2 3 FTEMP= 4.500000 最后,度娘知道里面有一段,寫的很好,轉(zhuǎn)在下面。 原始地址:http://zhidao.baidu.com/question/134017037.html character( 3 ) :: cStr = '123' Integer :: iInt = 0 Read( cStr , * ) iInt 此時(shí),iInt = 123(數(shù)字) 轉(zhuǎn)換成浮點(diǎn)數(shù)也類似。 character( 3 ) :: cStr = '123' Real :: rReal = 0.0 Read( cStr , * ) rReal 此時(shí) rReal = 123.0 從數(shù)字轉(zhuǎn)換成字符串,用 Write 既可 character( 3 ) :: cStr Integer :: iInt = 123 Write( cStr , * ) iInt 此時(shí) cStr = '123' |
至尊木蟲 (職業(yè)作家)
| 5 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 340求調(diào)劑 +3 | 話梅糖111 2026-03-24 | 3/150 |
|
|---|---|---|---|---|
|
[考研] 一志愿華東理工大學(xué)081700,初試分?jǐn)?shù)271 +5 | kotoko_ik 2026-03-23 | 6/300 |
|
|
[考研] 335求調(diào)劑 +4 | yuyu宇 2026-03-23 | 5/250 |
|
|
[考研] 求調(diào)劑 +7 | 十三加油 2026-03-21 | 7/350 |
|
|
[考研] 291求調(diào)劑 +8 | hhhhxn.. 2026-03-23 | 8/400 |
|
|
[考研] 284求調(diào)劑 +3 | yanzhixue111 2026-03-23 | 6/300 |
|
|
[考研] 361求調(diào)劑 +3 | Glack 2026-03-22 | 3/150 |
|
|
[考研] 350求調(diào)劑 +6 | weudhdk 2026-03-19 | 6/300 |
|
|
[考研] 306求調(diào)劑 +9 | chuanzhu川燭 2026-03-18 | 9/450 |
|
|
[考研] 一志愿華中農(nóng)業(yè)071010,總分320求調(diào)劑 +5 | 困困困困坤坤 2026-03-20 | 6/300 |
|
|
[考研] 287求調(diào)劑 +8 | 晨昏線與星海 2026-03-19 | 9/450 |
|
|
[考研] 354求調(diào)劑 +7 | Tyoumou 2026-03-18 | 10/500 |
|
|
[考研] 266求調(diào)劑 +3 | 哇呼哼呼哼 2026-03-20 | 3/150 |
|
|
[考研] 330求調(diào)劑0854 +3 | assdll 2026-03-21 | 3/150 |
|
|
[考研] 南昌大學(xué)材料專碩311分求調(diào)劑 +6 | 77chaselx 2026-03-20 | 6/300 |
|
|
[考研] 274求調(diào)劑 +10 | S.H1 2026-03-18 | 10/500 |
|
|
[考研] 304求調(diào)劑 +7 | 司空. 2026-03-18 | 7/350 |
|
|
[考研] A區(qū)線材料學(xué)調(diào)劑 +5 | 周周無極 2026-03-20 | 5/250 |
|
|
[考研] 材料學(xué)碩297已過四六級(jí)求調(diào)劑推薦 +11 | adaie 2026-03-19 | 11/550 |
|
|
[考研] 收復(fù)試調(diào)劑生 +4 | 雨后秋荷 2026-03-18 | 4/200 |
|