Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

새싹-날다람쥐 6월 10일: Difference between revisions

From ZeroWiki
No edit summary
No edit summary
Line 2: Line 2:


char *d;  
char *d;  
d = (char*)malloc(sizeof(char)*100);
d = (char*)malloc(sizeof(char)*100);
여기서 malloc(sizeof(char)*100);
여기서 malloc(sizeof(char)*100);
은 메모리 상의 어느 곳에 (sizeof(char)*100)byte만큼의 공간을 할당하고 그 주소를 반환한다.  
은 메모리 상의 어느 곳에 (sizeof(char)*100)byte만큼의 공간을 할당하고 그 주소를 반환한다.  
그리고 d는 char*형태이기 때문에 Casting을 해 주어서 (char*)malloc(sizeof(char)*100); 와 같은 형태가 되어야 한다.
그리고 d는 char*형태이기 때문에 Casting을 해 주어서 (char*)malloc(sizeof(char)*100); 와 같은 형태가 되어야 한다.
이 것은 char d [100]와 같은 변수 선언법이다.
이 것은 char d [100]와 같은 변수 선언법이다.
 
char *d;
char *d;
d = (char*)malloc(sizeof(char)*100);  
d = (char*)malloc(sizeof(char)*100);  
와 같이 선언을 했더라도 d[5]와 같은 배열적 접근도 가능하다.
 
와 같이 선언을 했더라도 d[10]와 같은 배열적 접근도 가능하다.
 
 


ex)이것으로 2차원 배열을 만들려면?  
ex)이것으로 2차원 배열을 만들려면?  
char **arrray, *d;
char **arrray, *d;
d = (char*)malloc(sizeof(char) * 100);  
d = (char*)malloc(sizeof(char) * 100);  
arrray = (char**)malloc(sizeof(d) * 100);  
arrray = (char**)malloc(sizeof(d) * 100);  
이렇게 하면 char array [100][100]와 같은 형태가 된다.
 
이렇게 하면 char array [100][100]와 같은 형태가 된다.



Revision as of 11:43, 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[10]와 같은 배열적 접근도 가능하다.


ex)이것으로 2차원 배열을 만들려면?

char **arrray, *d;


d = (char*)malloc(sizeof(char) * 100);

arrray = (char**)malloc(sizeof(d) * 100);

이렇게 하면 char array [100][100]와 같은 형태가 된다.