в соответствии с DDD. Я получаю seg-ошибку от strcpy, но я не могу понять, что я делаю неправильно (все еще совершенно новый для C). Любая помощь была бы весьма признательна, заблаговременно.strcpy Seg Fault
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;
}
Если какое-либо имя длиннее 31 символов, он будет писать недействительных памяти, так как буферы вы сделали только что большой. – mukunda
Имена в среднем всего 5-10 символов – Sammdahamm
Я бы предположил, что 'first' или' second' '' NULL'. Используйте отладчик. –