는 :sizeof char ** 포인터는 컴퓨터 아키텍처에 종속적입니까? 나는 다음과 같은 코드를 실행하면
int main()
{
char **temp;
printf("Size of **temp %d", sizeof(**temp));
printf("Size of *temp %d", sizeof(*temp));
printf("Size of temp %d", sizeof(temp));
return 0;
}
를 내가 얻을 :
Size of **temp 1
Size of *temp 8
Size of temp 8
어떤 방법 char
포인터가 8
의 크기가 않습니다되어 이해가 안? 그것은 기계 독립적입니까?
여기에 크기를 전혀 인쇄하지 않았습니다. 그냥 값. –
예, 컴퓨터, OS 및 컴파일러에 따라 다릅니다. 가장 일반적인 포인터 크기는 4 바이트 (32 비트) 및 8 바이트 (64 비트)입니다. – Blastfurnace
@JamesMcLaughlin : 시스템에서 출력물을 잘 생성 할 수 있습니다. 그는 초기화되지 않은 메모리를 역 참조합니다. –