Строка не заканчивается символом null
Этот дефект возникает, когда в строке недостаточно пространства для завершения с использованием символа null '\0'
.
Этот дефект применяется только к проектам в С.
Переполнение буфера может произойти, если вы скопируете строку в массив, не принимая неявный null terminator.
Если вы инициализируете символьный массив с литералом, избегайте задавать границы массива.
char three[] = "THREE";
Если проблема возникает после инициализации, вам, возможно, придется увеличить размер массива на единицу, чтобы принять во внимание null terminator.
При определенных обстоятельствах можно хотеть инициализировать символьный массив с последовательностью символов вместо строки. В этой ситуации добавьте комментарии к своему результату или коду, чтобы избежать другого обзора. Смотрите Адрес Результаты Polyspace через исправления ошибок или обоснования.
Группа: Программирование |
Язык: C |
По умолчанию: On для рукописного кода, off для сгенерированного кода |
Синтаксис командной строки: MISSING_NULL_CHAR |
Влияние: Низкое |
ИДЕНТИФИКАТОР CWE: 170 |