【问题标题】:How to split string to characters in Fortran?如何在 Fortran 中将字符串拆分为字符?
【发布时间】:2020-12-14 11:55:18
【问题描述】:

我正在开发加密程序,你会在其中放置文本并将其转换为编码消息。我坚持并指出我不知道如何将 len 拆分为单独的字符。有没有可能?

【问题讨论】:

  • 是的,这是可能的,但我们需要查看您尝试将字符串拆分为单独的字符。
  • 传输功能会为您完成。 chars = transfer(string, mold = 'a', size = len(string))

标签: fortran fortran90


【解决方案1】:

是的,您可以将字符串拆分为字符数组。如果 chararray = "abcdefg" 那么你可以有一个数组,如 ca(1) = chararray(1:1), ca(2) = chararray(2:2) ... ca(7:7) = chararray(7)

【讨论】:

    【解决方案2】:

    这也可以使用 iachar 和 achar 函数在 do-loop 中完成。

    program test
    character*7 :: stringin
    integer     :: single_character
    
    stringin = 'message'
    
    do i = 1, len(stringin), 1
        single_character = iachar(stringin(i:i))
        write(*,*) achar(single_character)
    end do
    
    end program
    

    这将使用 iachar 创建字母的整数表示,并使用 achar 将它们转换回来。如果使用数学表达式进行编码,这可能会有所帮助。

    更多信息可以找到here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-30
      • 1970-01-01
      • 2017-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-13
      • 1970-01-01
      相关资源
      最近更新 更多