当前位置:编程学习 > 网站相关 >>

Fortran中主程序如何输入参数

Fortran中主程序如何输入参数?

主要使用下面的三个函数实现:

第一个:
 

COMMAND_ARGUMENT_COUNT — Get number of command line arguments 
 
Description: 
COMMAND_ARGUMENT_COUNT returns the number of arguments passed on the command line when the containing program was invoked.  
Standard: 
Fortran 2003 and later  
Class: 
Inquiry function  
Syntax: 
RESULT = COMMAND_ARGUMENT_COUNT()  
Arguments: 
None  
 
Return value: 
The return value is an INTEGER of default kind.  
Example: 
          program test_command_argument_count 
              integer :: count 
              count = command_argument_count() 
              print *, count 
          end program test_command_argument_count 
           

COMMAND_ARGUMENT_COUNT — Get number of command line arguments

Description:
COMMAND_ARGUMENT_COUNT returns the number of arguments passed on the command line when the containing program was invoked.
Standard:
Fortran 2003 and later
Class:
Inquiry function
Syntax:
RESULT = COMMAND_ARGUMENT_COUNT()
Arguments:
None

Return value:
The return value is an INTEGER of default kind.
Example:
          program test_command_argument_count
              integer :: count
              count = command_argument_count()
              print *, count
          end program test_command_argument_count

  


第二个:
 

GET_COMMAND_ARGUMENT — Get command line arguments 
 
Description: 
Retrieve the NUMBER-th argument that was passed on the command line when the containing program was invoked.  
Standard: 
Fortran 2003 and later  
Class: 
Subroutine  
Syntax: 
CALL GET_COMMAND_ARGUMENT(NUMBER [, VALUE, LENGTH, STATUS])  
Arguments: 
NUMBER  Shall be a scalar of type INTEGER and of default kind, NUMBER \geq 0  
VALUE   (Optional) Shall be a scalar of type CHARACTER and of default kind.  
LENGTH  (Optional) Shall be a scalar of type INTEGER and of default kind.  
STATUS  (Optional) Shall be a scalar of type INTEGER and of default kind.  
 
Return value: 
After GET_COMMAND_ARGUMENT returns, the VALUE argument holds the NUMBER-th command line argument. If VALUE can not hold the argument, it is truncated to fit the length of VALUE. If there are less than NUMBER arguments specified at the command line, VALUE will be filled with blanks. If NUMBER = 0, VALUE is set to the name of the program (on systems that support this feature). The LENGTH argument contains the length of the NUMBER-th command line argument. If the argument retrieval fails, STATUS is a positive number; if VALUE contains a truncated command line argument, STATUS is -1; and otherwise the STATUS is zero.  
Example: 
          PROGRAM test_get_command_argument 
            INTEGER :: i 
            CHARACTER(len=32) :: arg 
           
            i = 0 
            DO 
              CALL get_command_argument(i, arg) 
              IF (LEN_TRIM(arg) == 0) EXIT 
           
              WRITE (*,*) TRIM(arg) 
              i = i+1 
            END DO 
          END PROGRAM 

GET_COMMAND_ARGUMENT — Get command line arguments

Description:
Retrieve the NUMBER-th argument that was passed on the command line when the containing program was invoked.
Standard:
Fortran 2003 and later
Class:
Subroutine
Syntax:
CALL GET_COMMAND_ARGUMENT(NUMBER [, VALUE, LENGTH, STATUS])
Arguments:
NUMBER Shall be a scalar of type INTEGER and of default kind, NUMBER \geq 0
VALUE (Optional) Shall be a scalar of type CHARACTER and of default kind.
LENGTH (Optional) Shall be a scalar of type INTEGER and of default kind.
STATUS (Optional) Shall be a scalar of type INTEGER and of default kind.

Return value:
After GET_COMMAND_ARGUMENT returns, the VALUE argument holds the NUMBER-th command line argument. If VALUE can not hold the argument, it is truncated to fit the length of VALUE. If there are less than NUMBER arguments specified at the command line, VALUE will be filled with blanks. If NUMBER = 0, VALUE is set to the name of the program (on systems that support this feature). The LENGTH argument contains the length of the NUMBER-th command line argument. If the argument retrieval fails, STATUS is a positive number; if VALUE contains a truncated command line argument, STATUS is -1; and otherwise the STATUS is zero.
Example:
          PROGRAM test_get_command_argument
            INTEGER :: i
            CHARACTER(len=32) :: arg
         
            i = 0
            DO
              CALL get_command_argument(i, arg)
              IF (LEN_TRIM(arg) == 0) EXIT
         
              WRITE (*,*) TRIM(arg)
              i = i+1
            END DO
          END PROGRAM

 

第三个:

GET_COMMAND — Get the entire command line 
 
Description: 
Retrieve the entire command line that was used to invoke the program.  
Standard: 
Fortran 2003 and later  
Class: 
Subroutine  
Syntax: 
CALL GET_COMMAND([COMMAND, LENGTH, STATUS])  
Arguments: 
COMMAND (Optional) shall be of type CHARACTER and of default kind.  
LENGTH  (Optional) Shall be of type INTEGER and of default kind.  
STATUS  (Optional) Shall be of type INTEGER and of default kind.  
 
Return value: 
If COMMAND is present, stores the entire command line that was used to invoke the program in COMMAND. If LENGTH is present, it is assigned the length of the command line. If STATUS is present, it is assigned 0 upon success of the command, -1 if COMMAND is too short to store the command line, or a positive value in case of an error.  
Example: 
          PROGRAM test_get_command 
            CHARACTER(len=255) :: cmd 
            CALL get_command(cmd) 
            WRITE (*,*) TRIM(cmd) 
          END PROGRAM 

GET_COMMAND — Get the entire command line

Description:
Retrieve the entire command line that was used to invoke the program.
Standard:
Fortran 2003 and later
Class:
Subroutine
Syntax:
CALL GET_COMMAND([COMMAND, LENGTH, STATUS])
Arguments:
COMMAND (Optional) shall be of type CHARACTER and of default kind.
LENGTH (Optional) Shall be of type INTEGER and of default kind.
STATUS (Optional) Shall be of type INTEGER and of default kind.

Return value:
If COMMAND is present, stores the entire command line that was used to invoke the program in COMMAND. If LENGTH is present, it is assigned the length of the command line. If STATUS is present, it is assigned 0 upon success of the command, -1 if COMMAND is too short to store the command line, or a positive value in case of an error.
Example:
          PROGRAM test_get_command
            CHARACTER(len=255) :: cmd
            CALL get_command(cmd)
            WRITE (*,*) TRIM(cmd)
          END PROGRAM

 

 

补充:Web开发 , 其他 ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,