struct fruit { char *name; char *place; } my_fruit; 라고 선언한 구조체를 사용한경우.. malloc를 어떻게 선언해야 합니까?
용도를 짐작하건데, 각 포인터 변수마다 각각 쓰셔야 겠네요.
저는 struct my_fruit *temp; temp=(struct my_fruit *)malloc(sizeof(struct my_fruit));
그리고 temp->name=(char *)malloc(할당크기); temp->place = (char *) malloc(할당크기);
이렇게 사용합니다.
[ 관련글 ]
struct fruit { char *name; char *place; } my_fruit;
배석준님의 답변도 맞구요.
그 경우에는 반드시 free(temp->name), free(temp->place)하신후, free(temp);를 하셔야 겠죠?
그 방법 말고, 다른 방법은,
struct my_fruit temp;
temp.name = (char *) malloc (원하는 사이즈) temp.place = (char * ) malloc (원하는 사이즈)
끝낼때는,
free(temp.name); free(temp.place);
이러면 되겠죠?
이 방법과 저 방법의 차이는...? 아시겠죠?
그럼 건투를 빕니다. ^^;
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
Re: malloc
용도를 짐작하건데, 각 포인터 변수마다 각각 쓰셔야 겠네요.
Re: malloc
저는
struct my_fruit *temp;
temp=(struct my_fruit *)malloc(sizeof(struct my_fruit));
그리고
temp->name=(char *)malloc(할당크기);
temp->place = (char *) malloc(할당크기);
이렇게 사용합니다.
struct fruit {
char *name;
char *place;
} my_fruit;
라고 선언한 구조체를 사용한경우..
malloc를 어떻게 선언해야 합니까?
[ 관련글 ]
이렇게도 쓸수 있습니다.
struct fruit {
char *name;
char *place;
} my_fruit;
배석준님의 답변도 맞구요.
그 경우에는 반드시 free(temp->name), free(temp->place)하신후,
free(temp);를 하셔야 겠죠?
그 방법 말고, 다른 방법은,
struct my_fruit temp;
temp.name = (char *) malloc (원하는 사이즈)
temp.place = (char * ) malloc (원하는 사이즈)
끝낼때는,
free(temp.name);
free(temp.place);
이러면 되겠죠?
이 방법과 저 방법의 차이는...? 아시겠죠?
그럼 건투를 빕니다. ^^;
댓글 달기