본문 바로가기
Language_/C 언어

[c언어] 포인터의 크기

by 낭람_ 2018. 8. 13.
반응형

포인터의 크기

포인터의 크기는 운영체제의 bit수에 따라 달라진다.

32비트 시스템의 포인터 크기 : 4바이트

64비트 시스템의 포인터 크기 : 8바이트

즉 32비트의 int*, double*, char* 의 크기는 모두 4바이트이고

64비트의 int*, double*, char*의 크기는 모두 8바이트이다.


포인터 크기 원리

포인터 = 메모리 위치를 가리키기 위한 주소를 담는 변수

즉, 32비트 라면 CPU의 메모리 접근을 위한 주소가 32비트 만큼 가능하기 때문에 포인터도 32비트(4바이트)가 된다.

반면, 64비트 라면 CPU의 메모리 접근을 위한 주소가 64비트 만큼 가능하기 때문에 포인터도 64비트(8바이트)가 된다.

이러한 원리로 인해서 포인터의 크기는 차이가 난다. (16비트의 컴파일러에서 포인터의 크기는 2바이트가 된다.)

반응형

댓글