프로그래밍 언어/C언어

C언어의 메모리 구조

원원 2019. 6. 2. 21:01

안녕하세요 오늘은 C언어 메모리구조에 대해 알아보겠습니다


프로그램을 실행하게되면 전역변수의 매개변수등은 정해진 장소에 저장되게 됩니다


1. 코드영역

실행할 프로그램의 코드가 저장되는 메모리 영역

cpu는 코드 영역에 저장된 명령문을 하나씩 가져다가 실행합니다.


2. 데이터영역

프로그램이 시작과 동시에 할당되어, 종료 시까지 남아있는 특징의 변수가 저장되는 영역

ex)전역변수, static변수


3. 힙 영역

프로그래머가 원하는 시점에 메모리 공간에 할당 및 소멸을 하기 위한 영역


4. 스택영역

함수를 빠져나가면 소멸되는 변수를 저장하는 영역

지역변수,매개변수


* 장점

유사한 성향의 데이터를 묶음.

관리가 용이해지고, 메모리의 접근이 빨라짐.


예)

1
2
3
4
5
6
7
8
#include<stdio.h>
 
int a = 10;
 
int main()
{
    int b = 10;
}

3번째줄 -> 데이터영역에 저장

7번째줄 -> 스택영역에 저장

'프로그래밍 언어 > C언어' 카테고리의 다른 글

#define와 #와 ##의 관계  (0) 2019.07.06
재귀함수란 무엇인가  (0) 2019.06.09
C언어 함수란?  (0) 2019.05.29
C언어 역슬래시(\)란?  (0) 2019.05.20
C언어 NULL포인터란?  (0) 2019.04.01