아래와 같은 코드를 실행할 경우에 대한 결과값은
{0, 10, 0, 20, 0, 30} 과 같은 결과가 나옵니다.
제 생각에 컴퓨터가 이전과 달리 64bit 운영체제로 변경되면서
int형은 4byte를 차지하지만 메모리는 8byte를 차지하기 때문에
8byte공간에 4byte를 차지하기 때문이라는 생각이듭니다.
int형을 모두 __int64 로 바꾸면
p[0], p[1], p[2]가 {10, 20, 30}이 나오는 것은 확인하였지만
결론적으로 4byte공간만 사용하고 싶은데
8byte공간을 사용하고 있는 경우라고 생각이 들어서
메모리적으로 낭비라는 생각이 듭니다.
정말로 4byte 공간만 사용하는 방법이 있을까요?
혹은 제가 생각한 부분중 틀린 부분이 있나요?