수다닷컴

  • 해외여행
    • 괌
    • 태국
    • 유럽
    • 일본
    • 필리핀
    • 미국
    • 중국
    • 기타여행
    • 싱가폴
  • 건강
    • 다이어트
    • 당뇨
    • 헬스
    • 건강음식
    • 건강기타
  • 컴퓨터
    • 프로그램 개발일반
    • C언어
    • 비주얼베이직
  • 결혼생활
    • 출산/육아
    • 결혼준비
    • 엄마이야기방
  • 일상생활
    • 면접
    • 취업
    • 진로선택
  • 교육
    • 교육일반
    • 아이교육
    • 토익
    • 해외연수
    • 영어
  • 취미생활
    • 음악
    • 자전거
    • 수영
    • 바이크
    • 축구
  • 기타
    • 강아지
    • 제주도여행
    • 국내여행
    • 기타일상
    • 애플
    • 휴대폰관련
  • 프로그램 개발일반
  • C언어
  • 비주얼베이직

[질문] 구조체 패딩에 대해 질문드립니다.

새콤이

2023.04.01

패딩에대해 잘 이해가되지 않습니다.
구조체 변수가 Stack 메모리에 잡힐때, 좀더 빠른 메모리 접근을 위하여 각 변수는

Stack 의 주소값에 자신의 배수에 해당하는곳에 자리잡게 되고 그 사이는 패딩영역이 된다

여기까지는 이해가 되는데요...

그런데 패딩예중에 한가지 이해 안되는 게 있습니다.
struct PAD{
char ch;
double dbl;
int N;

};

위와 같은 구조체의 크기를 찍어보면 24 바이트가 나옵니다..
간단하게 그려보면

-------------

ch

-------------
패딩------------- dbl

-------------
N
-------------
패딩
-------------
책에는 위와같은 그림이 나와있는데요
N 변수 메모리 공간 밑에 패딩이 왜들어가는지 잘 이해가 되지 않습니다.
N 까지 메모리를 할당하고 난다음의 패딩은 왜 필요한가요??

그리고 또한가지궁금한 게 있는데요

위의 구조체를 예로들때에 어떻게 항상 ch 변수와 dbl 변수 사이의 패딩 크기가 7일수가 있을까요?

ch 변수의 시작주소가 상황에 따라 다를텐데 쉽게 예를들어 주소값을 10진수로 밨을때

ch 변수가 10001 일때부터 시작할수 있고, 아니면 10005일때 시작할수 있는데..

밑의 dbl 변수가 8의 배수 주소값에 위치 하려면 전자는 패딩값이 6이고 후자는 2 이면 되는거 아닌가요?

왜 항상 ch 변수와 dbl 변수사이의 패딩크기는 7 바이트 인거죠?

정말정말 헷갈리네요..ㅜㅜ

읽어 주셔서 감사하고 답변 부탁 드립니다.^^

신청하기





COMMENT

댓글을 입력해주세요. 비속어와 욕설은 삼가해주세요.

  • 각티슈

    보통 C Memory Management 할때 globalcode, heap, stack 이 정도의 지식이면 되는 줄알았는데, 알아야 될게 또 있나보네요 ㅠㅠ ~~~ 저두 찾아 봐야겠어요

  • 지음

    움 전 첨듣는 말인데..ㅡㅡ; 좀더 공부해야할듯...

  • 리리

    kldp 에 가 보시면.... 패딩에 관련된 이야기가.. 아주 긴 스레드를 가지고 있습니다.
    kldp 에서 검색해 보시면.. 좋은 자료를 찾을 수 있을듯 합니다. ^_^

  • 타키

    패딩영역에 대해서 알필요가 있을까요? 그다지.. 언급되지 않는 개념인데요. 실무에서도 전혀 몰라도 되는 개념입니다. 알면 좋겠지만.. ^^:

번호 제 목 글쓴이 날짜
2695905 ASP로 개발됐을 때 css가 달라져요 ㅠㅠ (4) 슬아라 2025-05-24
2695878 form을 이용한 다른 페이지로 넘기는 방법을 알려주세요 (1) 핫파랑 2025-05-24
2695844 저기 암호화 및 복호화 프로그램.. 만들어볼려는대 (2) 한빛 2025-05-24
2695814 [질문] PDA에서 애플릿이 가능한가요? (1) 봄시내 2025-05-24
2695785 웹 설정 도와줄분 화이트캣 2025-05-23
2695730 갑자기 기억이 안나는데 accesskey 속성.. 빛나라 2025-05-23
2695702 [질문] Java 버전 차이에 의한 오류?!! (2) 검사 2025-05-23
2695672 자바 임베디드 쪽으로 배우고 싶은데요..질문이요.. (1) 뽀그리 2025-05-22
2695647 헉! 이클립스(v3.1)에서 발생되는 널포인트 익셉션? ;;; (3) 아빠몬 2025-05-22
2695586 IFRAME 캐싱 질문 봄나비 2025-05-22
2695498 [질문]실행가능한 jar파일.. 정말 이해가 안가네요... ㅡㅜ;; 터1프한렩 2025-05-21
2695468 자바랑 이클립스에서요.. 스킬 2025-05-21
2695375 Mysql 연동하는 자바 질문있습니다. 아리솔 2025-05-20
2695319 파워포인트 파일을 저장할 수 있을까요? 시윤 2025-05-19
2695289 [질문]Tween 값의 정도를 알고 싶습니다. 타마 2025-05-19
2695238 c 와 c++의 시작 (10) ChocoHoilc 2025-05-18
2695215 탑메뉴의 repeat-x .배경이 두가지에요ㅠ ㅠ 널위해 2025-05-18
2695187 자바스크립트와 자바의 import에 관해서 질문드려요 (1) 무슬 2025-05-18
2695116 테마 문의 (해당 사이트와 같은 테마 혹은 플러그인) Sweet 2025-05-17
2695084 [질문] starDrag()와 같은 함수 만들기 민구 2025-05-17
<<  이전  1 2 3 4 5 6 7 8 9 10  다음  >>

수다닷컴 | 여러분과 함께하는 수다토크 커뮤니티 수다닷컴에 오신것을 환영합니다.
사업자등록번호 : 117-07-92748 상호 : 진달래여행사 대표자 : 명현재 서울시 강서구 방화동 890번지 푸르지오 107동 306호
copyright 2011 게시글 삭제 및 기타 문의 : clairacademy@naver.com