реклама на сайте
подробности

 
 
> классы памяти, как умело применить
Zelepuk
сообщение Aug 27 2011, 12:02
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 634
Регистрация: 27-10-10
Пользователь №: 60 464



Здравствуйте!
Мне необходимо, чтобы переменная объявленная в файле my.c была видна так же в файле main.c

я делаю так

в my.c пишу:

int x;

в main.c пишу:

extern int x;

Это верное понимание спецификатора extern ?

Очень нужно убедиться.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
777777
сообщение Aug 30 2011, 09:26
Сообщение #2


Профессионал
*****

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Цитата(Zelepuk @ Aug 27 2011, 16:02) *
в main.c пишу:

extern int x;

Это верное понимание спецификатора extern ?

В принципе да, но более универсальный подход - помещать extern в .h файл и включать во все файлы проекта.
Go to the top of the page
 
+Quote Post
Zelepuk
сообщение Aug 30 2011, 14:24
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 634
Регистрация: 27-10-10
Пользователь №: 60 464



Цитата(777777 @ Aug 30 2011, 13:26) *
В принципе да, но более универсальный подход - помещать extern в .h файл и включать во все файлы проекта.


если я вас правильно понял то нужно сделать так

в .h файле:

extern int x;

в других файлах :

extern int x;

Это правильно?
Go to the top of the page
 
+Quote Post
777777
сообщение Aug 30 2011, 15:03
Сообщение #4


Профессионал
*****

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Цитата(Zelepuk @ Aug 30 2011, 18:24) *
если я вас правильно понял то нужно сделать так

в .h файле:

extern int x;

в других файлах :

extern int x;

Это правильно?


Нет. В .h файле:

extern int x;

в одном из c-файлов:

int x;



Цитата(MrYuran @ Aug 30 2011, 18:35) *
Естественно, в .h-файле не забыть обертку-предохранитель

Это еще зачем? Такое бывает нужно в переполненных библиотеках, превратившихся за годы в спагетти. В твоем собственном проекте я думаю ты сам сможешь включать .h файл ровно по одному разу в каждый .c-файл.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 02:59
Рейтинг@Mail.ru


Страница сгенерированна за 0.01376 секунд с 7
ELECTRONIX ©2004-2016