[Fortran 포트란 90/95] #005. 제어입출력 READ , WRITE
COM2011. 1. 1. 02:31 |
입력 READ ( io unit , format ) input list
출력 WRITE ( io unit , format ) output list
READ 와 WRITE 는 제어부와 입출력리스트로 구성된다.
READ 에서, 실제 입력데이터는 콤마, 빈칸, 줄에 의해 구분된다.
입력값은 각 데이터형 상수 방식으로 입력한다.
가령 복소수를 입력할때는 ( a,b ) 꼴로 입력을 한다.
괄호없이 그냥 수로 입력하면, 실수로 처리되어 실수로 입력되고, 허수부는 0 이 된다.
이는 복소수 자료형이 실수형을 포함하는 데이터 타입이기 때문에 그렇다.
논리형이라면 .TRUE. 와 .FALSE. 로 입력하면 되는데, 이것이 상당히 번거로우므로, 간단히 T 와 F 로 입력할 수 있다.
그런데, READ 는 기본적으로 한줄로 부터 입력을 받는다.
한줄에 받기로한 데이터보다 더 많은 데이터가 입력될 경우, 버리기 때문에, 줄로 구분해서 데이터를 입력시 유의해야한다.
단, 입력이 부족할때는 다음줄로 부터 받을수 있다.
제어부
( ) 는 제어부로, 첫번째 부분은 입출력 유닛에 대한 부분이고, 두번째 부분은 입출력 포맷에 관한 부분이다.
io unit 는 어디서 데이터를 읽어올 것인가를 나타낸다.
* 는 스탠다드 인풋 디바이스 를 나타내며, 보통 키보드 입력을 뜻한다.
format 은 입출력 형식에 관한 것이다.
* 는 list-directed (free format) 으로, input list 의 변수자료형이 입력받을 자료의 포맷을 결정한다는 의미이다.
io unit 과 format 에 대해서는 나중에 자세히 다루도록 한다.