Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Зачем в С нужен статик?
Отправлено
Сергей Ильченко
09 ноября 2009, г. 14:48
Составить ответ
|
Вернуться на конференцию.
Ответы
Коллеги, спасибо!
-
Сергей Ильченко
(09.11.2009, 17:30:48
92.62.56.51
,
пустое
)
Чтоб не засирать пространство имен.
-
F8
(09.11.2009, 16:32:35
192.168.0.18,193.254.233.230
,
пустое
)
Если функцию объявить как static, то оптимизатор сможет ее заинлайнить.
-
vmp
(09.11.2009, 16:29:56
10.0.1.100,87.245.155.198
,
пустое
)
А имеет смысл использовать static, особенно для массивов, если функция вызывается часто-часто и это типа сэкономит время затрачиваемое функцией на свою работу...
-
Сергей Ильченко
(09.11.2009, 15:54:11
92.62.56.51
,
пустое
)
если массив инициализируется каждый вызов - вряд ли, может даже наоборот - зависит от архитектуры
-
yes
(09.11.2009, 16:22:2
89.175.180.246
, 476 байт)
читать : для доступа к ДИНАМИЧЕСКИМ переменным имеется стэк поинтер5
-
yes
(09.11.2009, 16:23:4
89.175.180.246
,
пустое
)
Смысл всего этого дела заключался изначально в том что компы были слабые и памяти у них было мало. Публика экономила на длине идентификаторов. Вот чтобы можно было в разных файлах назвать разные переменные одним и тем же словом Foo...
-
Codavr
(09.11.2009, 16:02:20
91.196.34.210
,
пустое
)
Ну и когда толпа над одной прогой трудится, шоб не договариваться заранее о том кто какие глобальные имена пользует
-
Codavr
(09.11.2009, 16:04:36
91.196.34.210
,
пустое
)
Еще чтобы локальную переменную (определенную внутри функции как static) (+)
-
Quasy
(09.11.2009, 15:29:55
192.168.0.207,80.243.9.34
, 462 байт)
;) "Никто к ней, кроме как из этой функции, не может обратиться." Присвой её значение (внутри функции) к внешней глобальной и все "вытащится".
-
Макаров
(09.11.2009, 15:37:47
95.107.90.149
,
пустое
)
Ашабаетесь... Изменится тА, глобальная. А статик сохранит. Но если(+)
-
Quasy
(09.11.2009, 15:42:59
192.168.0.207,80.243.9.34
, 89 байт)
Ещё в васике так делал! ;)
-
Макаров
(09.11.2009, 16:39:5
95.107.90.149
,
пустое
)
Подмечено-оптимизатор лучше расшаривает переменные! Да и в плане пользования вне процедур
-
Макаров
(09.11.2009, 15:24:19
95.107.90.149
,
пустое
)
Шоб переменную глобальную в данном файле или функцию не видно было из других файлов.
-
Codavr
(09.11.2009, 15:17:18
91.196.34.210
,
пустое
)
Ограничивает область видимости глобальной переменной рамками модуля, в котором она определена... Грубо говоря, получаем "локально глобальную" переменную... Вот такие извращения...
-
ETM
(09.11.2009, 15:04:51
94.79.44.2
,
пустое
)
static*
-
Сергей Ильченко
(09.11.2009, 14:49:10
92.62.56.51
,
пустое
)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 90:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru