Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int32), | intent(inout) | :: | argc | |||
type(arg_element_t), | intent(inout), | allocatable | :: | arg(:) | ||
character(len=:), | intent(inout), | allocatable | :: | entire |
subroutine get_arg_command_line(argc, arg, entire) implicit none integer(int32), intent(inout) :: argc ! argc type(arg_element_t), allocatable, intent(inout) :: arg(:) character(:), allocatable, intent(inout) :: entire integer :: i, len_ith, entire_len argc = command_argument_count() call get_command(length=entire_len) allocate(character(entire_len) :: entire) call get_command(command=entire) allocate(arg(0:argc)) do i = 0, argc ! Get length of i-th command line argmuemnt. call get_command_argument(number=i, length=len_ith) ! Allocate str(i)%v of the same length as the i-th argument. allocate (character(len_ith) :: arg(i)%v) ! Get the value of the i-th argument as a string. call get_command_argument(number=i, value=arg(i)%v) end do end subroutine get_arg_command_line