Простой ответ: убедитесь, что ваш буфер достаточно большой, если ваш буфер должен содержать 10 символов, добавьте один к размеру буфера, чтобы вместить нулевой символ \0
. Это не может быть подчеркнуто достаточно и является одним из самых больших камней преткновения в обучении C.
Если вы не указали подходящую длину, исключая символ nul, произойдет переполнение буфера и непредсказуемые результаты, такие как сбой программы или перепрыгивание в лес, которое больше никогда не будет видно.
Надеюсь, это поможет,
С наилучшими пожеланиями,
Том.