0
struct Object * newObj(char * nome, int idade, float altura) {
    struct Object *obj = (struct Object *) malloc(sizeof(struct Object));
    strcpy(obj->nome, nome); // This is the line
    obj->idade = idade;
    obj->altura = altura;
    return obj;
}

This is my code, I don't know why I'm getting segmentation fault in strcpy.
Any ideas?

Thanks in advance.

Erick Filho
  • 1,962
  • 3
  • 18
  • 31

1 Answers1

3

In your struct Object type, the nome member is declared as a pointer and you also need to allocate memory for the array. Without allocating memory obj->nome has an inderminate value.

ouah
  • 142,963
  • 15
  • 272
  • 331