More actions
No edit summary |
No edit summary |
||
| Line 8: | Line 8: | ||
(char*)malloc(sizeof(char)*100); | (char*)malloc(sizeof(char)*100); | ||
와 같은 형태가 된다. | 와 같은 형태가 된다. | ||
이 것은 char d[100] | 이 것은 char d[100]와 같은 변수 선언법이다. | ||
| Line 22: | Line 22: | ||
arrray = (char**)malloc(sizeof(d) * 100); | arrray = (char**)malloc(sizeof(d) * 100); | ||
이렇게 하면 char array[100][100] | 이렇게 하면 char array[100][100]와 같은 형태가 된다. | ||
Revision as of 11:38, 10 June 2009
동적 할당
char *d; d = (char*)malloc(sizeof(char)*100);
여기서 malloc(sizeof(char)*100);은 메모리 상의 어느 곳에 (sizeof(char)*100)byte만큼의 공간을 할당하고 그 주소를 반환한다. 그리고 d는 char*형태이기 때문에 Casting을 해 주어서 (char*)malloc(sizeof(char)*100); 와 같은 형태가 된다. 이 것은 char d[100]와 같은 변수 선언법이다.
char *d;
d = (char*)malloc(sizeof(char)*100);
와 같이 선언을 했더라도 d[50]와 같은 배열적 접근도 가능하다.
ex)이것으로 2차원 배열을 만들려면?
char **arrray, *d; d = (char*)malloc(sizeof(char) * 100); arrray = (char**)malloc(sizeof(d) * 100);
이렇게 하면 char array[100][100]와 같은 형태가 된다.