• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    해결됨

변수 초기화 질문

23.11.06 17:31 작성 조회수 321

0

안녕하세요 최호성 개발자님

질문에 앞서 좋은 강의 제공해주셔서 감사하다는 이야기드립니다 🙂

64bit 체제에서 long int로 변수 선언 시 메모리가 8byte가 되는 것으로 알고 있고, unsigned long int ulnewData = 1UL; 로 변수를 초기화 했을 때, 01 00 00 00 16 20 09 6b라고 메모리에 초기화되었는데 01 00 00 00 00 00 00 00 으로 메모리에 초기화되어야 하는게 아닌가요?

그림의 메모리 주소인 48FC78FB29 ~ 48FC78FB2B까지 0으로 초기화되어야하는게 아닌가 싶어서 질문드립니다.

답변 1

답변을 작성해보세요.

2

long int 형은 32비트 형식입니다. 64비트 형식은 long long int입니다. 그런 이유 때문에 32비트만 초기화 된 것입니다. 참고하시기 바랍니다. 🙂

메모리를 직접 확인하는 습관은 C언어 개발자에게 매우 중요합니다. 지금 대단히 잘 하고 계신 겁니다. 앞으로도 이런 접근방식으로 학습을 이어간다면 좋은 결과를 얻을 수 있다 확실하게 말 할 수 있습니다.

채널톡 아이콘