Нет, они одинаковые.Все объявления функций являются внешними.Ключевое слово extern говорит: «Я хочу, чтобы вы знали, что это существует, но я не определяю это здесь».С int это было бы необходимо, потому что объявление также является определением.С помощью функции точка с запятой в конце явно помечает ее как не определенную здесь.
Мой лучший вывод о том, почему они пометили ее как внешнюю, возможно, потому что объявление функции находится в заголовочном файле, но определениев соответствующем файле с, как и следовало ожидать.Это похоже на то, как extern обычно используется в типе int (где вы хотите объявить его, но планируете связать его из какого-то другого источника). Так что это форма документации.
Это лучшийобъяснение связи со мной:
http://publications.gbdirect.co.uk/c_book/chapter4/linkage.html