Приведем простой пример из программирования
ра. Приведем простой пример из программирования на Си:
for (n = 1; n < 10; n++)
{
... /* выполняется только 9 раз */
}
Здесь ясно видны числа 1 и 10, и вы можете подумать, что
цикл будет выполняться от 1 до 10. Чтобы это действительно было
так, нужно вместо < указать <=.
Ошибки, специфические для языка Си
-----------------------------------------------------------------
В "Руководстве пользователя" по Си и С++ есть раздел о не-
достатках программирования на Си. Однако лучше всего изучать эту
TDeb 3.0 #2-3 = 126 =
тему во время отладки.
Компиляторы Borland Си и Borland C++ прекрасно подходит для
того, чтобы находить многие из специфических для языка Си ошибок,
о которых другие компиляторы вам даже не сообщают. "Включив" в
компиляторе все предупреждающие сообщения, которые он может гене-
рировать, вы сэкономите время, необходимое для отладки программы.
(О том, как задавать уровень предупреждений, рассказывается в
"Руководстве пользователя по Borland C++".)
Далее мы приведем далеко не полный перечень возможных ошибок
при использовании языка Си. Для некоторых из них Borland Си и
Borland C++ генерирует предупреждающие сообщения. Не забудьте
найти причину вывода всех предупреждающих сообщений, поскольку
они могут быть вызваны возможной допущенной вами ошибкой.
Использование неинициализированных локальных переменных
-----------------------------------------------------------------
В языке Си динамические локальные переменные, описанные
внутри функции, будут иметь неопределенное значение, пока вы что-
нибудь в них не загрузите. Например:
do_ten_times()