-------------------------------------------------
앞에서는 메모리 동적할당의 개념에 대해서 주로 다루어 보았으므로
여기서는
예제 위주로 복습 해보겠습니다.
-------------------------------------------------
-------------------------------------------------
int형 동적할당 예제 코드가 있습니다.
2번째는 동적할당, 해제 함수 사용을 위한 standard library 헤더파일입니다.
6번째는 동적할당 메모리를 가리키기 위한 포인터 입니다.
13번째 에서는
int 형 자료 N개 만큼 동적할당 메모리를 만든 다음
포인터 ptr에 주소를 넘겨주고 있습니다.
-------------------------------------------------
15번째 에서는 반복문으로 동적할당 메모리에 값을 주고 있습니다.
17번째 줄에서는
ptr주소에서 i만큼 떨어진곳의 공간에
i+1값을 대입하고 있습니다.
이 코드를 실행하면
-------------------------------------------------
실행결과는 다음과 같습니다.
그 다음엔 그림으로 자세히 알아보겠습니다.
-------------------------------------------------
그림으로 나타내면 이런식으로 표현할 수 있습니다.
malloc 함수를 이용하여 힙공간에 동적 메모리를 할당한 다음
스택공간에 있는 포인터 변수 ptr에 주소를 넘겨주는 방식입니다.
-------------------------------------------------
-------------------------------------------------
마찬가지로 기본적인 형태는
이전의 int형 데이터 동적할당과 같고
달라진 점은 데이터 타입이 double로 바뀌었다는 점 뿐입니다.
-------------------------------------------------
여기선 동적할당된 메모리에 값을 넣어 주는데
아까와는 달리 배열 형태를 사용하였습니다
원래 배열도 포인터 이므로
사실 아까 참조 연산자를 썼던것과 동일 합니다.
오른쪽에 표현한 코드가 동일한 코드입니다.
이 코드를 실행하면
-------------------------------------------------
실행결과는 다음과 같습니다.
그 다음 그림으로 자세히 살펴보겠습니다.
-------------------------------------------------
그림으로 나타내면 이런식으로 표현할 수 있습니다.
malloc 함수를 이용하여 힙공간에 동적 메모리를 할당한 다음
스택공간에 있는 포인터 변수 ptr에 주소를 넘겨주는 방식입니다.
-------------------------------------------------
-------------------------------------------------
마찬가지로 기본적인 형태는
이전의 int형 데이터 동적할당과 같고
달라진 점은 데이터 타입이 char로 바뀌었다는 점 뿐입니다.
-------------------------------------------------
여기선 동적 할당된 메모리에 값을 넣어 주는데
오른쪽에
문자 ‘A’ 더하기 i를 하고 있는데
문자 ‘A’는 아스키 코드로 65이므로
정상적으로 65, 66 이런식으로 값이 증가되어 저장됩니다.
-------------------------------------------------
그림으로 나타내면 이런식으로 표현할 수 있습니다.
malloc 함수를 이용하여 힙공간에 동적 메모리를 할당한 다음
스택공간에 있는 포인터 변수 ptr에 주소를 넘겨주는 방식입니다.
-------------------------------------------------
'C_프로그래밍' 카테고리의 다른 글
[C 프로그래밍] 44장. 매크로 (상수, 함수) (0) | 2020.04.08 |
---|---|
[C 프로그래밍] 42장. 동적할당(1) (0) | 2020.04.07 |
[C 프로그래밍] 41장. 구조체 포인터 (0) | 2020.04.07 |
[C 프로그래밍] 40장. 구조체 배열 (0) | 2020.04.07 |
[C 프로그래밍] 39장. 구조체 (0) | 2020.04.06 |