Итак, у меня есть следующие функции:Возвращаемое значение функции == 0?
int functionX()
{
return strcmp(array1,array2)==0;
}
Почему бы кто-нибудь это сделать? == == 0 предположил бы, что эта функция всегда будет возвращать FALSE. Является ли это правдой или мне не хватает некоторых экзотических синтаксических праймеров?
В чем проблема? Если strcmp возвращает 0, это означает, что строки равны. В противном случае один больше другого, в зависимости от знака результата (отрицательный или положительный результат). – Rolice
Вы возвращаете результат оценки «strcmp (array1, array2) == 0». Если strcmp (array1, array2) действительно равен 0, вы вернете true, иначе false. Это не более экзотично, чем «return 1 == 1;», за исключением того, что этот пример, очевидно, всегда будет возвращать true. –