[an error occurred while processing this directive]
|
В K&R С допустимо, чтобы определение переменной без инициализации встретилось в нескольких модулях. Таким переменным присваивался тип линковки common, т. е. реально получалась только одна паременная в программе.
ANSI C требует, чтобы у переменной в программе было ровно одно определение (без слова extern) ровно в одном модуле, но допустимо сколько угодно описаний (со словом extern). Поэтому, если компилятор старый - он будет компилировать старый код, новые компиляторы - не обязательно.
E-mail: info@telesys.ru