2013년 9월 10일 화요일

파생된 자료형, 구조체

From Evernote:

파생된 자료형, 구조체

포트란의 5가지 기본 자료형 이외에도 사용자가 직접 자료형을 정의할 수 있는데, 이를 구조체(structure)라고 한다.

정의

type :: atom
character (len =2) :: label
real :: x , y , z
end type atom

atom이란 이름의 구조체는 2 문자 길이의 이름과 3개의 x, y, z 좌표를 갖도록 정의하였다.



선언

type(atom) :: carbon1

carbon1이라는 이름의 변수가 atom이라는 자료형으로 선언되었다.



멤버

carbon1%label = "C"
carbon1%x = 0.0000
carbon1%y = 1.3567
carbon1%z = 2.5000

구조체의 각 멤버는 구조체 선택자(%)를 사용해서 접근할 수 있다. %의 앞뒤로 공백문자가 있어서는 안된다.



구조체의 배열

type(atom), dimension (10) :: molecule
molecule(1)%type = "C"

위와 같이 구조체 또한 배열의 형태로 사용할 수 있다.