07.07

신승빈·2022년 7월 16일
1

KGCA 수업

목록 보기
3/128

intptr_t

다른 환경으로 이식 가능한 안전한 포인터 선언 방법 제공

_countof

정적으로 할당된 배열의 요수 수.
sizeof(Arr)/sizeof(Arr[0])와 동일.

_msize

동적으로 할당된 메모리 블록의 크기.

strlen

C String에서 '\0' 이전까지의 길이 반환.
복사하고 싶다면 strlen() + 1 필요.

toupper, strupr

toupper

문자를 대문자로 변환.

strupr

문자열을 대문자로 변환.

strtok

문자열 분리 함수.
찾는 토큰을 '\0'로 바꾸는 방식으로 구현.
Reference : https://blockdmask.tistory.com/382

정적화

프로그램의 일부 연산을 미리 수행해서 메모리에 저장한 후 실행 중 불러오는 방법.
수행 속도를 올릴 수 있음.
Template Meta Programming 도 정적화의 일부라고 볼 수 있을 듯.

공용체(Union)와 비트 필드 구조체

필요한 비트만큼만 사용하는 방법.

struct Outter
{
	union 
	{
		struct
		{
			int a : 4;
			int b : 24;
			int c : 4;
		};
		unsigned int shared;
	};
};

int main()
{
	Outter test;
	test.a = 0x1;
	test.b = 0x234567;
	test.c = 0x8;
}


리틀 엔디안에 맞춰 데이터가 들어가는 것을 볼 수 있다.

Little Endian, Big Endian

Little Endian

작은 단위의 바이트가 낮은 주소의 메모리에 저장되는 것.
Host byte 정렬.

Big Endian

작은 단위의 바이트가 높은 주소의 메모리에 저장되는 것.
Network byte 정렬.
Reference : https://genesis8.tistory.com/37

profile
이상을 길잡이 삼아 로망을 추구합니다.

0개의 댓글