반응형

int a = 20;

int* p = &a;

//여기서 p는 a를 가리키고 있다

a = 20;

*p = 20;

p = (int*) malloc(4); //memory allocation //메모리4바이트를 할당하고, 시작주소를 넘겨라(강제형변환 연산자)

//힙공간에 4바이트 할당을 하고 시작번지를 갖고 있게 하라

*p = 80; //할당영역에 80을 넣어라.

p = (int*)malloc(sizeof(int)); //이 경우 void*가 리턴됨. 따라서 형변환 int 를 해줌. //할당

free(p); //할당해제

char* s = "ace"; //s가 "ace"메모리 영역을 가리키고 있음.

s = (char*)malloc(strlen("ace")+1); //순수한 문자열의 길이이므로 +1 //널문자추가 //4바이트가 할당되고 s는 힙메모리 4바이트를 가리킴

strcpy(s, "ace");

free(s);

---

int n;

int* p = (int*)malloc(n*sizeof(int)); //5를 입력받았으면 5*4=20바이트를 할당하고 시작주소를 p에게 넘겨줌.

p = (int*)calloc(n, sizeof(int)); //같음. 초기화시 많이 사용.

//realloc(p, sizeof(int)*10);

 ---

//컴파일 후 stack영역이 사용됨. 런타임시(프로그램 실행시)에는 heep영역을 써야함.

(양주종의 코딩스쿨 보면서 메모. http://func.kr)

 

반응형

노루오줌 풀
국내도서
저자 : 김남구
출판 : 시문학사 2004.03.15
상세보기

Posted by neodalos
,