Intrinsic Character Functions

1. CHAR = 숫자를 해당 문자로 변환(프로세서에 의존)

ex)

CHARACTER :: out

INTEGER :: input = 65

out = CHAR(input) ! out is A

2. ICHAR = 문자를 숫자로 변환(프로세서에 의존)

ex)

CHARACTER :: input = 'A'

INTEGER :: out

out = CHAR(input) ! out is 65

3. ACHAR = 숫자를 해당 문자로 변환(프로세서에 비의존, ASCII)

portability 때문에 CHAR보다는 ACHAR을 사용할 것.

4. IACHAR = 문자를 숫자로 변환(프로세서에 비의존, ASCII)

portability 때문에 ICHAR보다는 IACHAR을 사용할 것.

5. LEN = 문자열의 선언된 길이 반환

ex)

CHARACTER(len=20) :: str1

INTEGER :: out

str1 = "ABC XYZ"

out = LEN(str1) ! out is 20

6. LEN_TRIM = 공백을 제거한 후의 문자열의 길이 반환

ex)

CHARACTER(len=20) :: str1

INTEGER :: out

str1 = "ABC XYZ"

out = LEN_TRIM(str1) ! out is 7

7. TRIM = 공백을 제거한 문자열 반환

ex)

CHARACTER(len=20) :: str1

str1 = "ABC XYZ"

WRITE (*,*) TRIM(str1)

! The output from TRIM is a 7-character string containing 'ABC XYZ'

8. INDEX = str1 에서 str2가 처음 나오는 위치를 반환.

ex 1)

CHARACTER(len = 20) :: str1 = "THIS IS A TEST!"

CHARACTER(len = 20) :: str1 = "IS"

INTEGER :: out

out = INDEX(str1, str2) ! out is 3

ex 2) optional 3rd argument - back

CHARACTER(len = 20) :: str1 = "THIS IS A TEST!"

CHARACTER(len = 20) :: str1 = "IS"

INTEGER :: out

out = INDEX(str1, str2, .TRUE.) ! out is 6

'Programming > Fortran' 카테고리의 다른 글

Internal WRITE Statement  (0) 2008.12.18
Convert character data into numeric data and vice versa using internal file  (0) 2008.12.18
Lexical Functions  (0) 2008.12.16
Gauss-Jordan Elimination  (0) 2008.12.16
Assumed-Shape Dummy Arrays  (0) 2008.12.16

+ Recent posts