C에서 int의 모든 바이트에 액세스 할 수있는 간단한 프로그램이 있습니다. 나는 32 비트 컴퓨터를 사용하고있다.C에서 개별 바이트에 액세스하려고 할 때 왜 형식 범위를 벗어나는 바이트에 액세스 할 수 있습니까?
int x = 1;
unsigned char* bytes = (unsigned char*)&x;
printf("Value: %d\n", bytes[10000]);
마지막 줄 99
을 인쇄 또는 유효한 문 이유를 이해하지 않습니다. 내 컴퓨터의 int
에는 4 바이트 만 있어야합니다. bytes
은 0-3
의 키 값만 허용한다고 가정합니다.
무엇을 이해하지 못합니까?
'bytes'는 변수가 아니라 경찰관입니다. 아무것도 허용하거나 거부하는 것이 아닙니다. –