01) Endian check
int endian(void)
{
int i = 0x00000001;
if (((char*)&i)[0])
return LITTLE_ENDIAN;
else
return BIG_ENDIAN;
}
02) .h파일 만들기
#ifndef __FILE_NAME_H__
#define __FILE_NAME_H__
#ifdef __cplusplus
extern "C"{
#endif
#define SYS_ENDIAN_BIG 0
#define SYS_ENDIAN_LITTLE 1
int endian(void);
#ifdef __cplusplus
}
#endif
#endif
03) 헤더파일은 컴파일 되는 것이 아니라 .c가 컴파일 되기 전에 전처리과정을 중 소스 내에 필요한 내용을 삽입하는 역할을 한다. 다만 global 변수를 헤더파일에 선언할 경우, 여러 소스파일에서 해당 변수를 사용할 때 컴파일러는 하나의 변수로 link하지 못하고 중복선언으로 알게된다. 따라서 초기화할 소스파일(.c)에서 선언을 하고 다른 소스파일에서는 extern으로 변수를 가져와서 사용해야 한다
04) typedef
typedef가 하는 일은 기존의 Data형으로 새로운 Data형을 만드는 것.
'c' 카테고리의 다른 글
리눅스 IP충돌 체크 (0) | 2022.09.08 |
---|---|
리눅스 정규식을 이용한 IP / Email 주소 체크 (0) | 2022.09.06 |
구조체 배열 인자로 넘겨서 채우기 (0) | 2022.08.11 |
리눅스 usb mount 예제 (0) | 2021.07.20 |
ASCII & 한글 완성형(KSC5601) 출력 소스 (0) | 2021.07.08 |