Definir una función devolviendo el puntero a la estructura.
Por favor ten paciencia conmigo, soy de otro idioma y soy novato en c y lo estoy aprendiendo dehttp://c.learncodethehardway.org/book/learn-c-the-hard-way.html
<code>struct Person { char *name; int age; int height; int weight; }; struct Person *Person_create(char *name, int age, int height, int weight) { struct Person *who = malloc(sizeof(struct Person)); assert(who != NULL); who->name = strdup(name); who->age = age; who->height = height; who->weight = weight; return who; } </code>
Entiendo que la segunda función Person_create devuelve un puntero de estructura Person. No entiendo es (puede ser porque soy de otro idioma, erlang, ruby), ¿por qué lo define como
<code>struct Person *Person_create(char *name, int age, int height, int weight) </code>
no
<code>struct Person Person_create(char *name, int age, int height, int weight) </code>
y ¿hay otra manera de definir una función para devolver una estructura?
Lo siento si esta pregunta es demasiado básica.