Что не так с strcmp?

В ответах на вопросЧтение в строке и сравнение ее Cболее чем один человек не рекомендовал использоватьstrcmp()говоря такие вещи, как

Я также настоятельно советую вам привыкнуть к использованию strncmp () сейчас, чтобы избежать многих проблем в будущем.

или (вПочему мое сравнение строк не удается? )

Убедитесь, что вы используете strncmp, а не strcmp. strcmp крайне небезопасен.

На какие проблемы они ссылаются?

Причинаscanf() со строковыми спецификаторами а такжеgets() настоятельно не рекомендуется потому что они почти неизбежно приводят к уязвимости переполнения буфера. Однако невозможно переполнить буферstrcmp(), право?

«Переполнение буфера или переполнение буфера - это аномалия, при которой программа, записывая данные в буфер, выходит за границы буфера и перезаписывает смежную память».

(-Википедия: переполнение буфера).

Поскольку функция strcmp () никогда не записывает данные ни в один буфер, функция strcmp () не может вызвать переполнение буфера, верно?

По какой причине люди препятствуют использованиюstrcmp()и рекомендуюstrncmp() вместо?

Ответы на вопрос(3)

Ваш ответ на вопрос