Вопросы по теме 'extern'

Использование extern в C не работает должным образом
Я создал два файла: настройки.h #ifndef TUNABLES_H #define TUNABLES_H void tunables_load_conservative(); void tunables_load_aggressive(); extern int timer_x; #endif /*TUNABLES_H */ и настройки.с #include "tunables.h" int timer_x;...
615 просмотров
schedule 27.02.2024

C++: конфликт пространства имен между внешним C и членом класса
Я наткнулся на довольно экзотическую проблему пространства имен С++: сжатый пример: extern "C" { void solve(lprec * lp); } class A { public: lprec * lp; void solve(int foo); } void A::solve(int foo) { solve(lp); } Я...
1926 просмотров
schedule 10.12.2023

C++: связывание внешних переменных из пространства имен
Кажется, я не могу ссылаться на внешне определенную переменную из пространства имен, используя extern . Он работает из глобальной области, но как только туда добавляется пространство имен, он не может связать. Мой файл констант выглядит так:...
6586 просмотров
schedule 24.11.2022

Невозможно использовать вместе спецификаторы extern и static класса хранения.
В C99 6.7.1 говорится Максимум один спецификатор класса хранения может быть указан в спецификаторах объявления в объявлении. Я знаю, что extern и static являются спецификаторами класса хранения, но extern в основном указывает...
1113 просмотров
schedule 01.04.2024

Различное поведение компиляторов с внешней компоновкой
Когда я компилирую следующие исходные коды в VC++ 10, i со статической связью назначается 42 , но в G++ 4.5.1 i с внешней связью в source2.cpp назначается 42 . Любые идеи о том, что должно быть стандартным подтверждающим поведением в...
111 просмотров
schedule 30.01.2024

Как использовать несколько исходных файлов и файлов заголовков
Недавно я узнал, как мы можем использовать несколько исходных файлов с файлами заголовков, чтобы сделать код переносимым и иерархическим. Для этого я попытался создать свою древовидную программу, используя этот принцип. Вот мои файлы b_tree_ds.h...
23418 просмотров
schedule 14.11.2023

Есть ли недостатки в объявлении переменных в файлах заголовков без ключевого слова extern?
Недавно я начал понимать, что использование ключевого слова extern очень приветствуется. Таким образом, я начал задаваться вопросом, есть ли что-нибудь не так с текущим (без внешнего) способом использования файлов заголовков: main.c: #include...
2833 просмотров
schedule 15.05.2024

Использование ключевого слова Extern
Я знаком с ключевым словом extern, оно используется для объявления переменной, присутствующей в каком-то другом файле, но что означает следующий оператор? extern "C" const IMAGE_DOS_HEADER __ImageBase;
762 просмотров
schedule 05.06.2024

почему функции не нужен внешний вид, а переменная нужна
Извините, ребята, я знаю, что мой английский плохой, но я сделал примеры, чтобы мой вопрос был более понятным. a.cpp #include <iostream> using namespace std; void funcfoo(){ cout << "test only" << endl; } int varfoo =...
308 просмотров
schedule 25.11.2023

Ошибки дублирования символов внешнего наследования, что происходит?
У меня вопрос об использовании extern и наследования. Я кодирую приложение iOS на Objective C, используя X-Code. У меня есть два гипотетических класса B и C, которые наследуются от класса A. Теперь класс A импортирует класс с именем Constraints...
314 просмотров
schedule 25.05.2024

Почему глобальная статическая переменная имеет приоритет над внешней внутри функции?
это сложно объяснить в тексте, поэтому я приведу пример. //f1.c int a = 5; int main() { printf("func2() output is: %i\n", func2() ); return 0; } //f2.c static int a = 3 int func2() { extern int a; return a; } Когда я...
635 просмотров
schedule 23.02.2024

Переменные, объявленные глобально, являются внешними или статическими?
Я изучал в C, что переменные, использующие ключевое слово extern, ссылаются извне, например: Prog1.c main(){ extern int a ; a=2; } Prog2.c int a=3; эти две программы успешно скомпилированы вместе. означает ли это, что переменная a в...
244 просмотров

Как разделить одну переменную между двумя файлами .c?
Рассмотрим переменную abulo. Я пытаюсь разделить abulo между двумя файлами .c. Вот что я сделал -- Создан а.ч. Этот файл содержит строку extern int abulo; a.c содержит такой оператор: int abulo = 0; в b.c. включен a.h. Тогда есть только...
124 просмотров
schedule 31.12.2023

Какая польза от static/extern в исходных файлах?
У меня очень неоднозначное представление о том, что происходит, когда я компилирую много файлов — в основном, когда речь идет о видимости вещей из одного файла в другой. Из того, что я прочитал, static ограничивает область действия переменной или...
172 просмотров
schedule 28.12.2023

Доступ к статическому классу C# из DLL C++
Мне поручили написать новый интерфейс для устаревшей C++ DLL, для которой у меня нет исходного кода, которая — по причинам, не зависящим от меня — напрямую обращается к глобальному классу в устаревшем приложении. Из приложения это что-то вроде:...
335 просмотров
schedule 03.02.2024

Как extern работает в пространствах имен?
Я запускаю простую программу, похожую на ту, что я нашел здесь . Это предназначено для уменьшения раздувания кода при включении констант в несколько файлов. Он делает это, используя константные глобальные переменные в пространстве имен с их...
14348 просмотров

Google Closure Compiler - Как создать Extern для переменной (имя переменной не может измениться, как в Eval)
Я использую Google Closure Compiler в режиме SIMPLE_OPTIMIZATIONS. JavaScript использует оператор «Eval» с переменной «_u», встроенной в строку. Когда Google Closure Compiler запутывает код, имя переменной изменяется на «a», и я получаю сообщение об...
331 просмотров

Внешняя связь const в C
Я играл с ключевым словом extern в C , когда столкнулся с этим странным поведением. У меня есть два файла: файл1.с #include<stdio.h> int main() { extern int a; a=10; printf("%d",a); return 0; } файл2.с const...
997 просмотров
schedule 02.10.2022

внешние и глобальные переменные с одинаковыми именами в C
Я пытаюсь понять, что произойдет, если в какой-то программе у нас будет так: extern int x; void foo(){...} void bar(){...} void main(){ foo(); bar(); } int x=0; Так что же должно произойти? Почему разрешено иметь две такие переменные с...
1968 просмотров
schedule 17.11.2023

глобальная переменная С++ не была объявлена ​​в этой области
Я новичок в С++. Я пытаюсь изменить очень сложный код видеокодека в рамках моего школьного проекта последнего года обучения. Это мой код: Это заголовочный файл, в котором я объявил три внешних переменных: yuv.h #include <vector>...
1078 просмотров
schedule 26.03.2024