c - strcpy Seg Fault -


according ddd i'm getting seg fault strcpy can't quite figure out i'm doing wrong (still quite new c). appreciated, in advance.

int compare_people(person* first, person* second) {     char firstname[32];     char secondname[32];      strcpy(firstname, first->name);     strcpy(secondname, second->name);      int returnval = strcmp(firstname, secondname);      return returnval; } 

it seems either first or second equal null or first->name or second->name equal null or has non-zero terminated data due using strcpy exceeds 32 characters. other reason can first->name or second->name has invalid pointer example pointer local data destroyed.

insert check in function. example

assert( first != null && second != null &&          first->name != null && second->name != null &&         strlen( first->name ) < 32 && strlen( second->name ) < 32 ); 

or can split assert in several separate asserts.


Comments

Popular posts from this blog

ruby on rails - RuntimeError: Circular dependency detected while autoloading constant - ActiveAdmin.register Role -

c++ - OpenMP unpredictable overhead -

javascript - Wordpress slider, not displayed 100% width -