Доброго времени суток! Извеняюсь за оффтоп, но больше спросить негде. Проблема в следующем: Один кусок программы пишется в файле client.c Для коммуникации в локальной сети к нему посредством #include "network.h" привязывается библиотека. В ней должна быть переменная int PORT. Если я сейчас объявляю в client.c extern int PORT; То линкер выплёвывает ошибку на манер - дважды декларированная переменная. То же самое происходит если в client.c это объявление не писать. Я так понимаю это мотому, что network.h дважды включается сначала в network.c и потом в client.c... Применение ifndef не помогло. Если прописать переменную в network.c а не в network.h то всё работает. Но по идее при написании client.c, network.c вовсе не обязан быть доступным, соответсвенно программер не может посмотреть какие переменные есть в network.c... Это можно как-нибудь побороть ? Т.е. декларировать переменню в network.h и чтобы линкер не плевался ? Заранее благодарен Владимир.
Attachment:
signature.asc
Description: Digital signature