Turbo-C
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
터보-C 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
Lua 게시판
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C/C++ Q/A
[4585] Re:변수선언후 메모리 할당된 주소값
Starlet [starlet5] 1487 읽음    2004-07-24 00:10
안녕하세요.
올려주신 코드에서 int a,b,c 세개의 변수가 있는데 이 변수들은 분명히 어딘가에 위치를 잡고 있을 것입니다. 그곳이 어디일까요?
바로 스택영역입니다. 함수내에 선언되는 변수들이나 배열은 모두 스택 영역에 자리를 잡습니다. 글로벌로 선언된 변수들은 bss 라는 영역에 자리를 잡게 되지요. 스택에 자리잡고 있기 때문에 먼저 선언된 것이 큰 주소값을 가집니다. 스택에 있다고 해서 프로그램 실행시 push되지는 않고 컴파일시 스택에 들어간 상태로 컴파일되어 실행파일이 만들어집니다.

이재득 님이 쓰신 글 :
: 수고하십니다.
:
: int a,b,c;
:     printf(" %p %p %p ",&a,&b,&c);
:
: 0012FF88 0012FF84 0012FF80
:
: 위와 같이 결과가 나오더군요.
: 제생각에는 먼저 선언한 a가 가장 작은 어드레스를 가져야 할꺼 같은데.
: 한 수 부탁드립니다.
:
:
:

+ -

관련 글 리스트
4573 변수선언후 메모리 할당된 주소값 이재득 1269 2004/07/22
4585     Re:변수선언후 메모리 할당된 주소값 Starlet 1487 2004/07/24
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.