>> Read Reply from No. 43453 article  
RE: [질문]다음구조체의 사이즈는?

등록 2002-02-28 17:32:00     조회 3
이름 litdemon    

		메모리를 할당 할때 문제입니다.
구조체를 선언하여 할당 할때는 연속되게 할당을 하는데
할당하는 기본 단위가 4바이트 입니다..
 님의 struct 에서
 struct
{
  int aaaa;
  char bbbb;
  char cccc;
}
하여도 마찬가지로 8바이트 입니다
하지만
struct
{
   char bbbb;
   int aaaa;
   char cccc;
}
이렇게 선언 할경우 12바이트가 잡힙니다
 왜 그런지 볼까요?
char bbb를 할당하기위해 기본 단위 4바이트를 할당
다음 int aaa를 할당 하려 했더니 4바이트 경계선을 넘는 군요
해서 다음 4바이트에 할당..
char ccc를 할당하기 위해 다시 기본단위 4바이트 추가..
 때문에 12바이트가 위의 구조체를 할당하기 위해 소모 됩니다...
  코딩할때 몰아서 하세요 ^^ 구조체 쓸때는 특히 더요 ^^
함수에서 선언되는 변수들에도 적용 되는 지는 모르겠네요..
 : struct
: {
: int aaaa;
: char bbbb;
: }
:
: 이 구조체의 포인터를 크기를 알고싶어서
: include<stdio.h>
:
: typedef struct {
:         int bbb;
:         char ccc;
: }aaa;
:
: int main(void)
: {
:         aaa ttt;
:         printf("size is %d",sizeof(aaa));
:         return 0;
: }
:
: 이렇게 짜봤습니다. 그런데 원래 저위의 구조체는 5 byte 가 나와야 정상아닌가요?
: 왜 8byte 가 나오는걸까요?
: 궁금해서 물어봅니다.그럼--지금까지 허접 리눅서였슴다.
이름
암호


>> 관련글
43453 [질문]다음구조체의 사이즈는?  오마이갓  2002.02.28  ....
  답장 RE: [질문]다음구조체의 사이즈는?  litdemon  2002.02.28  ....
Register [ localhost 목록보기 윗글 아랫글
글쓰기
답장쓰기 수정 삭제
정규표현식 [ 상세 검색 ]
페이지로딩: [ 0.57 초 ] 작업시간: [ 0.08 초 ]

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved
[TOP]

적수네 동네
+
| 적수네 동네
| 공부방
| 리눅스 잡지 서고
| LSN 소스
| 링크 모음
+---+
게시판
+
| 떠들어보세!
| 질문과 답변
| 새소식과 정보
| 1원짜리 팁?
| 대화방
+---+
칼럼?
+
| 세하 훔쳐보기
| Welcome2nite
| 혜진의 염장판
+---+
리눅스 상표권
+
| 반대 서명란
| 토론 게시판
+---+
GNU
+
| GNU 선언문
| GNU GPL
| GNU 미러 목록
+---+
프로젝트?
+
| 리눅스카운터
| RC5DES
| 실질헌법 제작
+---+
커널 소식
+
| 안정 버젼: 2.4.14
+---+
테마 선택
+
LSN 방송국?
+
| OFF AIR
+---+
회원
+
| 로그인
+---+
[ 적수네 동네 ] [ 리눅스 상표권 독점 반대 ] [ 한글 리눅스 문서 프로젝트 ] [ KrLine ] [ 사랑넷 ] [ Valid HTML 4.0! ] [ SlashDot ] [ Freshmeat ]
Copyleft (C) 1998-2001 Byeong-Chan Kim . License
TIME: 1791733962
System by WYZsoft, HDD by I.O.Linux, Mizi Research, Embryo, WOWLINUX, Domain by SarangNet, Network by KrLine.