제 컴퓨터에서
sizeof(char*) = 4 sizeof(int*) = 4 sizeof(long long*) = 4
sizeof(char*) = 4
sizeof(int*) = 4
sizeof(long long*) = 4
던데 그럼 포인터 크기는 무조건 4인 가요?
sizeof(char) == 1 외에는 자료형의 크기는 정해진 것이 없습니다.
sizeof(char) == 1
굳이 sizeof(char*) == sizeof(int*)라는 보장이 없다는 의미입니다.
sizeof(char*)
sizeof(int*)
보통 16비트 시스템에서 포인터의 크기는 2, 32비트 시스템에서는 4, 64비트 시스템에서는 8입니다.
하지만 이게 C/C++ 표준으로 정해진 건 아니기 때문에 컴퓨터에서 돌려 보기 전에는 포인터의 크기를 정확히 알아낼 수 있는 방법은 없습니다
프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.
댓글 입력