반응형
_t로 끝나는 자료형
ssize_t, size_t 등 처음 보는 자료형이 몇몇 등장했다.
그런데 이것을 두고 "고전적인(primitive) 자료형"이라고 한다.
이들은 일반적으로 sys/types.h 헤더 파일에 typedef 선언을 통해서 정의되어 있다.
즉, 여러분들이 잘 알고 있는 기본 자료형의 이름들을 또 다른 이름으로 바꿔놓은 것이다.
이러한 자료형은 꽤 오래 전부터 존재해 왔다.
지금은 자료형 int가 32비트(4바이트)라고 말한다.
보편적으로 사용되는 운영체제와 컴퓨터가 32비트 또는 64비트 이기 때문이다.
과거 16비트 시절에는 int가 16비트(2바이트)였다.
이렇듯 시스템의 차이, 또는 시간의 흐름에 따라서 자료형의 표현 방식이 달라지기 때문에
프로그램상에서 선택된 자료형의 변경이 요구되기도 한다.
그런데 4바이트 자료형이 필요한 곳에 size_t 또는 ssize_t를 사용하면, 코드의 변경도 최소화할 수 있다.
size_t 그리고 ssize_t의 typedef 선언만 변경해서 컴파일을 하면되기 때문이다.
그래서 일반적으로 프로젝트를 진행할 때에는 기본 자료형 이름에 별도의 이름을 부여하기 위해
많은 양의 typedef 선언이 추가된다.
그리고 이렇게 프로그래머에 의해 정의되는 자료형 이름과의 구분을 위해서,
시스템(운영체제)에서 정의하는 자료형의 이름에는 뒤에 _t가 붙어있다.
-
다음 포스팅부터는 파일 입출력 함수의 예제 3개를 봐보자.
반응형
'시작하지 말았어야 했던 것 > (Unix, Linux) C Socket' 카테고리의 다른 글
(리눅스) 파일 읽기 프로그램 (0) | 2021.02.02 |
---|---|
(리눅스) 파일 오픈 프로그램 (0) | 2021.02.02 |
(리눅스)파일 입출력 함수 (0) | 2021.02.02 |
(리눅스 기반 파일 조작) 저 수준 파일 입출력과 파일 디스크립터 (0) | 2021.02.02 |
(리눅스) 클라이언트[client] 프로그램 구현 (0) | 2021.02.02 |