Здравствуйте, the_moon, Вы писали:
_>Почему оно все равно компилируется?
_>Спасибо
Смотрим на это
(strncmp," ",
strlen(order_text))
но записаное так
(strncmp," [scip] ", strlen(order_text))
так как после имени функии стоит запятая, а не скобка, то это не вызов функции, а оператор запятая. То есть имеем три выражения. первое возвращает адрес функции, а не вызывает ее. Второе просто строка, но тоже валидное себе выражение. С третим выражением вопросов нет.
Результатом операции запятая будет результат самого правого выражения.
Вот поэтому компилятор и говорит дважды, что результат вычислений не используется — он действительно не используется