- Нужно подключить 5 датчиков 50М к ОВЕН МВА8 на расстоянии 7 м. Посоветуйте кабель + блочный разъем? Vladimir Ljaschko(204 знак., 30.04.2013 12:20 - 12:31, Cyber, полностью)
- Может ли KXO-800 150.0 MHz стоить 3482 руб? Ксения(231 знак., 23.04.2013 21:17 - 21:19, SCH, ссылка, полностью)
- Во! Кажется нашла чего хочу - NB4N507A, и вроде дешево, только в розницу сложно достать. Кто-нибудь покритикует мой выбор? => - Ксения(29.04.2013 15:06, ссылка)
- quartz1.ru tesla(30 знак., 23.04.2013 21:44)
- Смотрю и вижу: 200000 кГц 3HV8G-I30 за 750 руб. Чего так дорого? - Ксения(23.04.2013 22:28)
- Подожди, у тебя сначала 3 с половиной штуки - дорого было. Теперь - 750 тугриков. Чет я не понял, тебе что, за 0 рублев надо кошерный генератор? - tesla(23.04.2013 22:58)
- Да мне бы хоть какой. Как же МК работают на частотах свыше 100 МГц? Как-то же себе эту частоту они себе готовят и задешево. А $25 за частоту это дороже, чем сам МК. Вот и я хочу себе частоту 200 МГц раздобыть, но не за такие большие деньги. Ксения(307 знак., 24.04.2013 02:16 - 02:24)
- МК готовят частоту внутри с помощью PLL из более низкочастотного кварца. Есть и отдельные микросхемы, Леонид Иванович(148 знак., 24.04.2013 02:27)
- Я их сосчитать хочу! :) Подавать буду на счетный вход таймера. - Ксения(24.04.2013 02:33)
- Разве что на ПЛИС сделать самодельный таймер. Леонид Иванович(24.04.2013 02:38)
- Скажите, а бывают ли ДЕЛИТЕЛИ частоты (на степени числа 2), которые могли бы работать на частоте 200 МГц и сделать из нее вдвое меньшую? Если существуют, то можно было последовательно доделить до той частоты, которую данный МК способен сосчитать Ксения(16 знак., 24.04.2013 02:43)
- Я не совсем понял, что нужно, но вот на STM32F407 есть выход тактовой, деленный на N. У меня тактовая после PLL 168MHz. Вывел на ножку 168/4 = 42 MHz, наверное и 84 MHz вывести можно. Может это нужно было? - tesla(27.04.2013 15:55)
- Делители есть. Примеры присоединил. Самое дешевое - применить микросхему PLL синтезатора, там внутри есть два программируемых делителя, один из них обычно работает где-то до 1 - 2 ГГц. Например, LMX2322. Леонид Иванович(254 знак., 24.04.2013 02:53)
- Да, это уже проще. Счетчики 74АС или 74ALVC, но надо точнее искать. Там предел был кажется 170 или 185 МГц. Есть еще конечно и ЭСЛ счетчики. Сам такие применяю. - alex68(24.04.2013 02:46 - 02:50)
- Есть куча микросхем ФАПЧ. В том числе и в соик8, снаружи кварц на 10-25 МГц, на выходе до 250 или больше МГц. Есть и генераторы внешние. Но обычно все что выше 100 МГц имеет на выходе синус либо ЭСЛ уровни. - alex68(24.04.2013 02:30)
- Стоп. Снаружи такие частоты обычно не подают на МК. Внутри ФАПЧ делает из 10-20 МГц что угодно. Потреблять такой внешний генератор будет не мало. Да, и с каким же уровнем выходного сигнала генератор ищется? - alex68(24.04.2013 02:21)
- Не, ну, это у них нужно спрашивать. Но, 750 - не 3хххх, как ранее было заявлено. А вообще, для таких часто - вполне нормально. Нужно еще другие параметры посмотреть. А так - не пойму - куда? Вот, тут с STM4xx возился. У них есть выход тактовой tesla(84 знак., 23.04.2013 22:41)
- А зачем вы выбрали самый дорогой? :-) там и за 300 есть - Shura(23.04.2013 22:41)
- в терре KXO-V97 192.0 MHz QSMD7x5x1.8 313.83 р - m16_home(23.04.2013 21:45, ссылка)
- Бывает, и за бабки на порядок ниже. - tesla(23.04.2013 21:26)
- Дижикей - иностранная компания :), а мне надо, чтобы придти, отовариться и уйти. А то пока курьер мне этот кварц донесет, он в 100 раз подорожает. - Ксения(23.04.2013 21:24)
- Забанили на дижикее? - SciFi(23.04.2013 21:20, ссылка)
- Посоветуйте какой-нибудь мощный code beautifier для Си (и Си++), плиз. Хочу, чтобы умел: testerplus(911 знак., 27.04.2013 16:50, dao, полностью)
- Вот ещё ссылка. Я в восторге от возможностей, но пока не пользовал. - VVB(29.04.2013 06:08, ссылка)
- В общем, поустанавливал всякого (Eclipce, NetBeans, GnuIndent, Uncrustify). Насчет GnuIndent оказался неправ: он может не только инденты. Также нашел оболочку UniversalIndentGUI (->). Со своими тараканами, но много настроек, попробую что-нибудь testerplus(556 знак., 28.04.2013 13:28 - 13:34, ссылка)
- Так СликЕдит это все умеет же - Alex B.(28.04.2013 13:18)
- а вам потом этот код как? обратно сдавать? - Mahagam(28.04.2013 01:43)
- Да. testerplus(517 знак., 28.04.2013 02:02)
- Опять в деле :-) - abivan(27.04.2013 17:39)
- Offtop наверное, Apтём(117 знак., 27.04.2013 17:26)
- GNU indent. Eclipse IDE. Кстати, для навигации по коду нужен редактор, который это хорошо умеет: Source Insight, Understand for C++ ну и тот же Eclipse. - SciFi(27.04.2013 17:02 - 17:04)
- Да, с навигацией тоже надо будет решать. Во всех редакторах, что я видел, нет одной очень важной для меня функции: возврат на предыдущую позицию (вот перейти на определение ф-ции/переменной/константы - есть, а возврата обратно нет) - testerplus(27.04.2013 17:09)
- Спасибо. GNU indent, насколько помню, только индентом и занимается. А насчет эклипса: как-то работал с ним, но не обращал внимания на возможности его бьютифайера. Он может то, что в списке? Какой из эклипсов больше подходит? (У меня, кажись, testerplus(13 знак., 27.04.2013 17:07)
- Забодал этот mazur топик тасовать. 2Гудвин. На NCV33163 сходу получится такой широкий диапазон входных напряжений (3:1)? Ты при какой нагрузке испытывал от 8В до 36В? - rezident(29.04.2013 21:20 - 22:20, SCH, полностью)
- To: Vladimir Ljaschko и его Молодому коллеге Alex_rav(3831 знак., 29.04.2013 17:10, ARM, полностью)
- Пробовал каркасы со "щечками", намотку на 4 ролика по углам и пр. В архиве самое простое и быстрое решение, найденное в результате вчерашних изысканий, ибо витков надо немного. Да и самих катух "не великие тыщи". Как "на коленке" делать такое Гудвин(20 знак., 28.04.2013 23:08, Tech, полностью)
- Четверговый опрос: что изображено на картинке? - POV(29.04.2013 09:21, zen, картинка, полностью)General
- "Абзац" :) - Гудвин(29.04.2013 13:48, zen, ссылка, полностью)General
- Хм... СД карточка в SPI режиме не хочет работать с клоком быстрее 1MGz. визуально фронты сигналов ок, sck ok - RED_DRAGON(29.04.2013 13:34, SCH, полностью)
- Осваиваю потихоньку PCAD2006. Как правильно создать символ разъема, чтобы выводилось реальное имя подключенной к пину цепи? Леонид Иванович(26.04.2013 12:34, SCH, полностью)
- По AD vs PCAD как год назад переползший описываю Ralex(3016 знак., 26.04.2013 17:34)
- Place Port и некоторые извращения в черчении наверное помогут - quarry(26.04.2013 14:54)
- Кривой путь. Выделить проводник. Wire Properties -> Net Name поставить галочку "Display". Появится название цепи. Потом можно перетащить в нужное место. - =L.A.=(26.04.2013 14:03)
- ЛИ, вы уже очередную фичу спрашиваете, которая есть в AD, может его лучше осваивать или еще что нибудь покрепче? - Make_Pic(26.04.2013 13:34)
- я пока такой возможности не нашел. Если узнаете как - поделитесь, тоже очень нужно - koyodza(26.04.2013 12:47)
- Похоже, что никак. Я убиваю все эти надписи (RefDes, Value, Type), и просто вставляю свой текст. tesla(26.04.2013 12:45)
- Недавно обсуждали, возможно, присвоить им всем тип POWER - sav_ua(26.04.2013 12:42)
- Вопрос к знатокам сопряжения с цифровыми АТС по двухпроводному интерфейсу Up0/e. Вадим(223 знак., 29.04.2013 15:16,
, pld)
- О! Фтему: Появилось в продаже много элементов питания Li SOCl2 от кетайцев EEMB. И недорого. Хочется заюзать вместо дорогущих Li Varta. Тока вот такая закавыка - свежий элемент "выдает на гора" аж 3.7В. Сколько оно так продержится при потребляемом Гудвин(130 знак., 29.04.2013 13:06, SCH, полностью)
- Как лучше всего переходить с Delphi на C++?... POV(52 знак., 29.04.2013 12:36, dao, полностью)
- Вопрос к alex68 и спецам по ВЧ-СВЧ: какого максимального КПД можно добиться от усилителя на 3..5 Вт 140..170 МГц при питании 12 или 24 В и работе на нагрузку в виде резонансного малодобротного (< 10) контура, подключаемого через 2..3-метровый MBedder(88 знак., 28.04.2013 16:52, SCH, полностью)
- Ориентировочно каждый каскад усиления имеет КПД около 50%. С приличными транзисторами в последнем и предпоследнем каскадах КПД примерно 45%. Ну подход отход к снаряду 40%. - Codavr(29.04.2013 02:24)
- Что-то отдаленно похожее приходилось делать, Леонид Иванович(142 знак., 28.04.2013 21:17)
- ИМХО, гуглить: «передатчик "угол отсечки" КПД». То бишь, это третий курс радиотехнического института. В сети полно готовых курсовых по теме. Соотвенно, КПД около 60% => USER(95 знак., 28.04.2013 19:02,
)
- Усилитель какого класса или по какой топологии планируется? Какой сигнал он должен усиливать - CW или импульсное что-то? У нас частоты другие, но примерно, если собирать на транзисторах, то не более 60% кпд. Если готовые модули, то они обычно все alex68(173 знак., 28.04.2013 16:55 - 17:10)
- Столкнулся с примером программы (проект Keil), в которой в файле main.c есть строчка: #define extern sag1979(321 знак., 24.04.2013 13:59, MCU, полностью)
- А я вообще переменные extern не объявляю, так как у меня нет переменных, видных более чем из одного модуля. - Леонид Иванович(25.04.2013 15:52)
- А как обмен между модулями реализован? Указатели передаете? - rezident(25.04.2013 15:58)
- Доступ к любым данным ведется только через функции. - Леонид Иванович(25.04.2013 17:30)
- Буду весьма признателен, если покажешь, как в рамках этой парадигмы организовать вот такую модель: MBedder(1099 знак., 27.04.2013 16:06 - 16:11)
- требования к риалтайму есть? (зачем "Фоновые процессы работают по квазикооперативной модели"?) - Vit(27.04.2013 19:48)
- Под готовой ОСРВ - элементарно, например через MailBox. И не надо никакой квазикооперативности. - tesla(27.04.2013 16:11)
- Пока вычеркиваем - интересует просто вариант решения без глобальных и extern - MBedder(27.04.2013 16:12)
- Так а в чем вопрос? Обращение к глобальной переменной всегда можно заменить вызовом интерфейсной функции модуля, в которой будет обращение к скрытой в этом модуле переменной. Такой подход применим везде, и везде он даёт ухудшение эффективности. - Леонид Иванович(27.04.2013 19:22)
- Конечно. Зато, в случае применения ОСРВ (извиняюсь за выражение)имеем универсальность подхода и прочие плюсы. - tesla(27.04.2013 19:39)
- А какие интерфейсные функции могут быть у ISR? - MBedder(27.04.2013 19:29)
- ISR принадлежит модулю и работает с приватными данными модуля. Другой модуль получает доступ к этим данным через интерфейсные функции. Леонид Иванович(539 знак., 27.04.2013 19:39 - 19:56)
- Ну давай предельно упростим мою модель - ISR складывает данные в кольцевой буфер и, получив CRLF, выставляет флаг и обновляет указатель LastBytePtr. Фон, увидев этот флаг, обрабатывает данные от LastBytePtr до предыдущего CRLF - как всей MBedder(20 знак., 27.04.2013 20:07)
- Фон должен не читать напрямую флаг, а вызвать функцию, которая вернёт значение этого флага. Да, лишние накладные, зато очень легко вносить изменения в реализацию и таскать модули между проектами. - =AlexD=(27.04.2013 20:54)
- В принципе согласен, но жаба душит из-за накладных - MBedder(27.04.2013 20:58)
- у меня что-то подобное. накладные уменьшаю тем, что имею возможность сделать кольцевые буфера (куда всё складывает даже не софт, а DMA) оочень большими, такими, чтобы с запасом хватило при любых затыках, если они вдруг будут. - Mahagam(28.04.2013 00:41)
- Любая красота в программе вредит её эффективности. Но ведь предназначение человека - создавать в первую очередь красивые вещи, и только во вторую - работоспособные. - Леонид Иванович(27.04.2013 21:42)
- "Самый страшный зверь - это жаба. Она душила многих наших современников." А если серьёзно, то пока измерения не покажут необходимость оптимизации, то вся эта гонка за эффективностью - пустая трата драгоценного времени. - SciFi(27.04.2013 21:06)
- С++ рулит, флаг может быть статическим членом класса, а функция инлайновой. Тогда накладных нет. - =AlexD=(27.04.2013 21:00)
- Долго думал. Думал, может я не прав. Нет, ни фига. Никаких интерфейсных функций у ISR быть не может! - tesla(27.04.2013 19:44)
- Хорошо задал вопрос. А то ить некоторые предполагают, что вызов функции из прерывания - это самое оно. tesla(129 знак., 27.04.2013 19:35)
- А с быстродействием - как? - tesla(27.04.2013 16:04)
- Инкапсуляция это правильный подход, одобрямс. К сожалению вызов ф-и в прерывании в некоторых компиляторах процов "проф. уровня"(С)fk0 приводит к жуткому оверхеду. Поэтому приходится писать "функцию" как макрос и использовать глобальные переменные. abivan(50 знак., 26.04.2013 12:23)
- Совершенно непонятно, почему все прицепились к прерываниям? Обработчик прерывания - это функция, закопанная глубоко в недрах модуля, его внутреннее дело. И работает с приватными переменными модуля. Зачем из прерывания вызывать интерфейсные функции Леонид Иванович(16 знак., 26.04.2013 12:40)
- в PIC18 это не так у него один вектор прерывания. Поэтому где только можно использую PIC24(если новый проект и цены сопоставимы) у которого у каждого прерывания свой вектор. Вот тогда обработчик располагается в модуле и можно использовать static. - abivan(26.04.2013 13:08)
- Бывает надо... Поместить принятые данные в fifo, например. Такая архитектура, что очередь в другом модуле. Либо чисто по техническим причинам оно в другом модуле, сложно всё засунуть в один C-файл. Либо какие-либо чисто вычислительные функции fk0(99 знак., 26.04.2013 12:59)
- +1. Тоже жутко негодую по этому поводу. - SciFi(26.04.2013 12:44)
- Например, общий системный тик, который должен дергать все модули. Я то вызываю функции, но постоянно отслеживаю ресурсы, допуская, что их может не хватить. Что тогда? - Vladimir Ljaschko(26.04.2013 12:42)
- Ужос. Вот мой обработчки прерывания таймера, который генерирует системный тик: Леонид Иванович(181 знак., 26.04.2013 12:59)
- А как Вы делаете, когда один "процесс" или "модуль" требует обслуживание высокоприоритетное обслуживание, скажем 250 мкс, и средне-приоритетное (10мс), и вообще редкое (1с)? - Vladimir Ljaschko(26.04.2013 16:30)
- как-то рассказывал в общем как оно у меня - Vit(29.04.2013 10:03, ссылка)
- Тут такое дело: Леонид Иванович(309 знак., 26.04.2013 22:51)
- Для 250 мкс часто можно прерваться и всего-лишь обслужить по минимуму (инкрементнуть чего, в буфер загнать и т.п.) и не потерять событие, а потом
медленно спуститься и покрыть всё стадоостальную обработку сделать в фоне. Для 10 мс опять же Vit(227 знак., 26.04.2013 22:01 - 22:04)
- обычно на это разные функции-обработчики. Но все они должны выполняться быстро. Если что-то требует долгого ожидания, оно разбивается таким образом, чтобы каждая часть выполнялась быстро - koyodza(26.04.2013 16:48, ссылка)
- Ну вот рассудите. У меня есть 1) расчеты на десяток миллисекунд с периодом 100мс 2) расчеты на 1 мс с периодом 10 мс 2) обслуживание 5-6 логических модулей с периодом 500 мкс. Как совместить? Я не могу разделить на части формулу с long long - что Vladimir Ljaschko(12 знак., 26.04.2013 17:41)
- смешались кони с котлетами koyodza(2082 знак., 26.04.2013 18:00)
- Вы потянули слишком сильно в грубины RTOS. Имеем жесткий быстрый реал-тайм в нескольких логических модулей плюс мягкий разноуровневый реалтайм. Я реализую как последовательные вызовы функций из каждого модуля в прерываниях по системному тику, плюс Vladimir Ljaschko(358 знак., 27.04.2013 16:58)
- просцыте великодушно, но почему бы вытесняющую многозадачность не влепить? - Mahagam(26.04.2013 19:46)
- накуа? Чтобы ничего не контролировать? Хватит с меня и винды, в МК по-возможности минимизирую использование чужого кода - koyodza(26.04.2013 20:10)
- я без исходников (или с малочитаемыми) многозадачку и не рассматриваю. а та которая понята - та полностью под контролем. - Mahagam(26.04.2013 20:34)
- а по мне так оно куда как проще получается. - Mahagam(26.04.2013 20:12)
- Как в вытесняющей многозадачности сделать два параллельных strtok() ? Или как многозадачность -- так вытесняющая. А как библиотечные функции -- не используем. (можно сделать, но не на всякой libc) - fk0(26.04.2013 20:35)
- да, нужна аккуратность. Либо abivan(2420 знак., 27.04.2013 14:07)
- и много таких однопоточных функций? если придётся отказаться от strtok() ради всего удобства многозадачности - то почему бы и нет? - Mahagam(26.04.2013 21:36)
- Если явно то не указано -- вся C-библиотека. И масса собственного кода, если не принималось мер против того. Любая static переменная всё портит же. Что характерно во многих "ОС" нет понятия thread local storage. Что наводит мысль на крайнюю их fk0(14 знак., 26.04.2013 22:28)
- галимейший фриртос портировали на всё что может исполнять хоть какое-то подобие программ. сделали поддержку чуть ли не всех существующих компиляторов, и кагбээ проблем особо не возникает. вы про все Си-либы серьёзно? да? - Mahagam(27.04.2013 01:06)
- В "галимейшем фриртосе" как раз проблема с отсутствием глобальной переменной позволяющей хранить thread specific data. А проблем не возникает потому, что фриртос используют совместно с весьма специфическими программами. Где библиотечных функций не fk0(1061 знак., 27.04.2013 11:57)
- Пардон за вмешательство.Это не FF виноват. saifullin(82 знак., 27.04.2013 20:24)
- у меня 98% вызовов библиотечных функций - это тупо memcpy() да memset(). всё. остальное - свой код, который пишется вручную. а вы что? используете кодогенераторы? или как? Mahagam(1016 знак., 27.04.2013 13:15)
- А malloc? rand? А errno, наконец? А на errno, между прочим, завязана масса функций из math.h -- всё это неиспользовать, написать своё? Уже маразм в полную силу, не кажется? И попрошу заметить, во вменяемых ОС с потокобезопасностью всего этого fk0(2841 знак., 27.04.2013 16:47)
- malloc() пусть горит в огне. нехватало ещё нарваться на утечки памяти да отказ в выделении. цена крэша ~100k$, а MMU прикручивать пока что нет времени и возможностей. ведь на примитивном уровне TLS - это стек потока, ну так избавится от статиков Mahagam(1310 знак., 28.04.2013 01:37)
- Изначально речь шла про FreeRTOS, а не CrossWorks. Так вот в FreeRTOS невозможно ожидать множество событий. Это принципиальное ограничение. - fk0(28.04.2013 16:06)
- Утечки и фрагментация памяти -- это миф, как мне кажется, про который любят очень рассказывать те, кто их в глаза не видел. Только в узком круге задач возможна фрагментация или требуется гарантированное выделение памяти. Там и там можно тем же fk0(179 знак., 28.04.2013 16:02)
- MMU притянут за уши. Для реализации TLS нужна всего лишь некая глобальная переменная-указатель меняющая значение при переключении задач. MMU для неё не нужен и при наличии MMU она автоматически не появится, если её нет. - fk0(28.04.2013 15:31)
- "цена крэша ~100k$" - чуть не помер от хохота. Пальцы веером у Вас, наверное, даже во сне? - Леонид Иванович(28.04.2013 02:14)
- какое отношение имеет сон к суровой реальности? - Mahagam(28.04.2013 14:48)
- Уважаемый Леонид Иванович, не смейтесь, знаете, как тяжело отлаживать софт, не имея возможности протестировать все на рабочем объекте? Потому как сделать это можно всего один раз, ибо цена, скажем так, "включения" этого объекта, несколько alex68(187 знак., 28.04.2013 03:35)
- Да ладно Вам, знаю я, какие космические корабли тут запускают с крыш курятников. Один-единственный фирменный БП на весь форум говорит о многом. - Леонид Иванович(28.04.2013 11:56)
- разные есть. Но те, что громче кричат о "сотнях к$" обычно об этом только мечтают. Фирменное оборудование - тоже не показатель серьёзности/ответственности проектов, а только показатель количества выделяемых на его закупку денег koyodza(285 знак., 28.04.2013 12:58)
- Речь не о космосе, там стоимость запуска много выше :) Ну и не все говорят всю правду о себе и работе :) Повторюсь - не имея сколько нибудь адекватного стенда, отлаживаться очень трудно, и стоимость ошибок очень велика. Приходится все отлаживать alex68(57 знак., 28.04.2013 12:44)
- В таком случае есть какая-то модель объекта, симулятор. Не надо перегибать палку. - fk0(28.04.2013 16:10)
- Нет, совет должен быть другим. Леонид Иванович(144 знак., 28.04.2013 18:10)
- Блин, сами идите и полетайте, а потом пишите :) - alex68(28.04.2013 17:20)
- модель часто сильно отличается от реальности в крупных проектах, где задействован не только электронщик с программистом, а токари, слесари, строители и прочие, а сама модель строится по чисто теоретическим оценкам какого-то математика, зачастую не koyodza(65 знак., 28.04.2013 16:18)
- Ну и напрасно. "Есть многое на свете, друг Горацио, что и не снилось нашим мудрецам"(с) - MBedder(28.04.2013 02:33)
- ы? -> - Snaky(27.04.2013 12:16, ссылка)
- жаль, было бы интересно почитать - koyodza(27.04.2013 12:00)
- проще, не спорю - по крайней мере для случаев, когда есть асинхронные задачи, выполняющиеся долго. Но лучше обойдусь без этого. Вопросы надёжности и разделения ответственности мне более важны, чем простота использования - koyodza(26.04.2013 20:13)
- у меня немного иначе koyodza(64 знак., 26.04.2013 13:33)
- Сложность контроля за ресурсами намного возрастает - нужно проверять задержку каждой задачи. А у меня рухнула система - аха, понятно :) - Vladimir Ljaschko(26.04.2013 13:05)
- Ужос. Переделать всё немедленно. - SciFi(26.04.2013 12:45)
- Это у многих МК так: Apтём(330 знак., 26.04.2013 12:38)
- Это потому, что у программистов проф. уровня вся программа пишется в одном C-файле. Я недавно пример давал (в теме про goto). Тогда никакого оверхеда. - fk0(26.04.2013 12:38)
- Через облако :-) Вообще-то кошерный способ - вызывать функции. - SciFi(25.04.2013 16:10)
- Иногда делаю так dfasdfasdf(210 знак., 25.04.2013 15:48,
)
- то, что в *.с есть такое объявление, думаю, что если после включения хедеров, то сделано типо для наглядности. Vit(345 знак., 25.04.2013 12:43 - 13:23)
- В общем, большого смысла в этом нет. Просто, видимо, автор сей программы перестарался. В действительности же Bill(141 знак., 25.04.2013 09:49)
- Объявление extern позволяет знать тип переменной, но не резервирует под нее место в памяти. Так что включение в хедере определения переменной с extern никак не мешает определить эту же переменную в исходнике. Главное чтобы тип полностью rezident(10 знак., 24.04.2013 14:47)
- Вот и еще одна темка для холивара. Я вот с Палычем и stub не согласен. Переопределение ключегого слова в голову не приходило. Это делал по-другому. - abivan(24.04.2013 14:30 - 14:35)
- Объявление переменных с ключевым словом extern в заголовочном файле вовсе не зазорно. А отсутствие extern считается определением переменной. В заголовочном файле определению переменных не место. - stub(24.04.2013 14:20,
)
- Если есть переменные с extern, то, где-то долны быть без онного... Вот в main они "автоматом" и будут прописаны. Имхо, делать так - нехорошо! - Пaлыч(24.04.2013 14:06)