Стандартная Библиотечная функция memcmp не должен использоваться, чтобы сравнить пустой указатель, отключила строки
Стандартная Библиотечная функция memcmp не должен использоваться, чтобы сравнить пустой указатель, отключила строки.
Если memcmp используется, чтобы сравнить две строки, и длина любой строки является меньше, чем количество сравненных байтов, строки могут казаться отличающимися, даже когда они - логически то же самое. Символы после пустого терминатора строки сравнены даже при том, что они не являются частью строки.
Например:
memcmp(string1, string2, sizeof(string1))
string1 более длинен, чем string2.Стандартная Библиотечная функция memcmp не должен использоваться, чтобы сравнить пустой указатель, отключила строки.
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
| Группа: Стандартные библиотеки |
| Категория: необходимый |
| Категория AGC: необходимый |
| Язык: C90, C99 |