Популярные вопросы по тегу MACROS

Есть ли определение макроса для проверки версии ядра Linux?

... gcc, который 4 сообщит мне версию ядра Linux, чтобы я мог 3 соответствующим образом установить типы 2 переменных. ...

Экранировать символ # в макросе #define?

... ряться 9 до #include, но знак '#' сбивает препроцессор с 8 толку (поскольку он думает, что я хочу цитировать 7 аргумент). Например, я хочу сделать что-то 6 вроде этого: #define MACRO(name) #include "name##foo" И используйте это так: MACRO(Test) Чт ...

Есть ли способ проверить, что макрос определен и одновременно равен определенному значению

... Поскольку 16 макрос не объявлен, препроцессор считает 15 его равным 0, а оператор #if никогда не запускается. Если 14 файл заголовка забыли включить, может возникнуть 13 непредвиденное и недисциплинированное поведение. В идеале я хотел бы иметь возможность одновременно 12 проверять, определен ли макрос, и проверять, что 11 он равен определенному значению, в одной 10 строке. Если он не определен, препроцессор 9 выдает ошибку (или предупр ...

Безопасный malloc / realloc: перенос вызова в макрос?

... макрос, который остановит программу, если 4 метод вернет NULL можно ли безопасно использовать 3 следующий макрос? #define SAFEMALLOC(SIZEOF) (malloc(SIZEOF) || (void*)(fprintf(stderr,"[%s:%d]Out of memory(%d bytes)\n",__FIL ...

Запуск макроса до конца текстового файла в Emacs

... / reach to te alphabet 'p' DEL // Delete C-n C-x )//go to new line and Close the macro definition C-x e Двойное 8 нажатие e удалит p, но если я хочу делать 7 то же самое до конца файла, как я могу это 6 сделать, я не могу нажимать e, если у меня 5 20000 таких строк . Что делать ?? Не предлагайте 4 регулярное выр ...

Что делает макросы Lisp такими особенными?

... ой разработчик, работающий на других 6 платформах, я не имел привилегии использовать 5 макросы Lisp. Как человек, желающий разобраться 4 в этой шумихе, о ...

Защита заголовков в C++ и C

... main.cpp: #include "add.h" #include "subtract.h" При реализации 1 защиты заголовков упоминается следующее: #ifndef ADD_H #define ADD_H // your declarations here #endif Что здесь может быть декларация? И должен ли int main() стоять после #endif? Добавление _ ...

Что означает `% setup -q` в спецификации RPM?

... не расширяется с помощью rpmspec: rpmspec --eval '%setup' возвращает только 6 %setup, а -p ничего не меняет. Он также не упоминается 5 в других relevant docs. В ходе дальнейшего расследования 4 я заметил, что существует множество макросов, которые 3 не расширяются с помощью rpmspec, даже если я смог 2 найти ...

Как создать строку из макроса препроцессора

... chip.block. Есть ли способ построить 17 такую ​​строку? Ни одна из следующих попыток 16 не сработала: string hpath; hpath = "`HPATH"; // Results in hpath = "`HPATH" hpath = \"``HPATH\"; // Doesn't compile hpath = `HPATH; // Doesn't compile Я хочу, чтобы hpath был эквивалентен 15 выполнению этого назначения hpath = "top.chip.block", но с использованием 14 `HPATH вместо повторного указания пути. Я ...

Как отличить x86 от x86_64 во время компиляции в gcc?

... определяет 3 ОС Linux, а 386, 486 и 586 - архитектуру процессора. Есть 2 ли простой макрос для определения x86 linux 1 и x86_64 linux ...

Как расширить ссылки макросов VC++ с помощью Visual Studio?

... тор макроса и затем 3 «перейти к определению», развернуть ссылки 2 на макро ...

Что делает константу в C лучше: макрос или перечисление?

... преимущество каждого из них? Это 2 как-то связано с уровнем компилятора или ...

Получение имени класса c ++ программным способом

... спользуется во время выполнения, поэтому 5 она недоступна, но есть ли какие-либо макросы, которые 4 могут быть созданы для создания этой функции? Изменить: может 3 ...

Python-подобные декораторы C++

... имер: DECORATE(decorator_method) int decorated(int a, float b = 0) { return 0; } или DECORATOR_MACRO void decorated(mytype& a, myt ...

Как префикс / суффикс идентификаторов в макросе?

... g:expr) => { #[test] fn $id() { my_test_impl(stringify!($id), $arg); } } } Например, fn my_test_$id() { Я 3 определяю тесты, использу ...

Могу ли я создать «макрос» PHP (например, #define) для предоставления параметров для вызовов функций?

... e_1.php в строке 100. Я делаю это, поскольку 7 существуют сотни вызовов my_func, и сообщение об 6 ошибке в my_func() само по себе может быть 5 неинформативным (если я не сбрасываю стек). И 4 я не хочу, чтобы эти два параметра вручную 3 вводились несколько сотен раз. В C я бы сделал 2 что-то вроде #defi ...

* args, ** kwargs в макросах jinja2

... аргс Подобно varargs, но для аргументов 8 ключевого слова. Все неиспользованные аргументы 7 ключевых слов хранятся в этой специальной 6 переменной. К сожалению, любая комбинация 5 дополнительных аргументов ключевого слова 4 является ошибкой, {% macro example_2(one, two) %} do macro stuff {% endmacro %} {{ example_2(one, two, test='test') }} TypeError: macro 'example_2' takes no keyword keyword argument 'test' У меня нет примеров, ...

Использование #define в C без значения

... по 1 умолчанию принимает значени ...

Могут ли макросы Rust создавать строки времени компиляции?

... ются 3 в макросах Rust. Есть ли способ предотвратить 2 их побег? macro_rules! some { ( $var:expr ) => ...

Swift: как использовать флаги PREPROCESSOR (например, `#if DEBUG`) для реализации ключей API?

... пакетов аналитики, таких 3 как MixPanel, Flurry или Crashlytics): #if DEBUG static NSString *const API_KEY = @"KEY_A"; #else static NSString *const API_KEY = @"KEY_B"; #endif а 2 за ...

WRITE_ONCE в списках ядра Linux

... void __list_splice(const struct list_head *list, struct list_head *prev, struct list_head *next) { struct list_head *first = list->next; struct list_head *last = list->prev; ...

Использование макросов препроцессора Likely() / Againstly() в цепочке if-else if

... и условия, например else if (likely(Z)), чтобы 7 обозначить, что последний оператор (else) очень 6 маловероятен БЕЗ того, что компилятор влияет 5 на предсказание ветвления предыдущих проверок? В 4 принципе, пытается ли GCC оптимизировать 3 весь блок if-els ...

Как мне сопоставить тип выражения в макросе Rust?

... ый 2 я передал макросу. Вот как это будет работать 1 в C++ template <typename T> struct Attribute{ void operator(T)() {} }; template <> struct Attribute<float> { void operator(float)(float) { /* magical float stuff */ } }; template <> struct At ...

Как мне создать макрос Rust для определения строковой переменной со значением собственного идентификатора?

... с: macro_rules! my_macro { ($name: ident, $val: expr) => { let $name: String = $val.to_string(); } } и 4 используйте его как my_macro!(FOO, "FOO"); Однако это немного избыточно. ...

Как определить макрос c с несколькими операторами

... ть макрос с двумя строками 5 / операторами, например: #define FLUSH_PRINTF(x) printf(x);fflush(stdout); но он не может работать 4 из-за ограничения, с которым макросы C не 3 могут работать с ';'. Есть ли разумный способ 2 обойти это? PS: Я знаю, что верх ...

Макрос, объявляющий переменные в Rust?

... олучить, это 4 не так просто. #define VARS(data, stride, a, b, c) \ MyStruct *a = &data.array[0], \ MyStruct *b = &data.array[1 * (stride)], \ MyStruct *c = &data.array[2 * (stride)]; Однако точные детали назначения 3 не имеют значения для цели этого вопроса. Можно 2 ...

Как убрать закрывающие скобки с макроса?

... как один аргумент. Есть 7 ли макрос или другие методы, позволяющие 6 удалить заключительные скобки? Например, если 5 я определяю макрос вроде #define MY_MACRO(a, b) ... и используйте его 4 как MY_MACRO( A<int, double>, text ); будет неправ. используйте это как MY_MACRO( (A<int, double>), text) с макросом 3 или техникой удаления круглых скобок подойдет. Boost 2 предоставл ...

Когда мне следует указывать переменные CMake?

... ботают переменные. В частности, ${a}, похоже, имеет 3 другое значение, чем "${a}". Например, здесь: Passing a list t ...

Можете ли вы использовать вставленный токен в макросе с заглавной буквы?

... дующее: test_test1: TEST_TEST1_KEYWORD Теперь 7 вместо того, чтобы вводить одно и то же 6 имя дважды (один раз со всеми символами 5 нижнего регистра и снова со всеми символами 4 верхнего регистра), есть ли способ сделать 3 одно из следующих действий и ли ...

Макросы C для создания строк

... use testing #elif __LIVE_TESTING #define IV_DOMAIN test.domain.com //live testing servers #else #define IV_DOMAIN domain.com //production #endif // Sub-Domain #define IV_SECURE "secure.IV_DOMAIN" //secure.domain.org etc #define IV_MOBILE "m.IV_DOMAIN&q ...

Как я могу использовать формат! макрос в среде no_std?

... 6 num3 имеют любой числовой тип. Я пробовал использовать 5 numtoa и itoa/dtoa для отображения чисел, но numtoa не поддерживает 4 числа с плавающей запятой, а itoa не поддерживает 3 no_std. Мне кажется, что отображение числа в строке 2 - довольно обычное дело, и я, вероятно, упускаю 1 что ...

Могут ли макросы препроцессора C / C++ иметь значения параметров по умолчанию?

... аметров по 6 умолчанию для параметров макроса? Я знаю, что 5 никакой проверки типов нет, поэтому я ожидаю, что 4 значение по умолчанию будет не чем иным, как 3 некоторым тек ...

Перегрузка макроса по количеству аргументов

... OO3(x,y,z) ... Я хочу определить 6 новый макрос FOO следующим образом: #define FOO(x,y) FOO2(x,y) #define FOO(x,y,z) FOO3(x,y,z) Но это не 5 работает, потому что макросы не перегружают 4 количество аргументов. ...

Шифрование строки во время компиляции

... ot;; //After (secure) char * cString = XStr( 0x06, 0x15, 0x9D, 0xD5FBF3CC, 0xCDCD83F7, 0xD1C7C4C3, 0xC6DCCEDE, 0xCBC2C0C7, 0x90000000 ).c(); Есть ли возможность 4 поддерживать чистый код с помощью какой-либо 3 конструкции вроде //Before (unsecure) char * cString = "Helllo Stackoverflow!"; //After (secure) char * cString = CRYPT( ...

Что означает "#pragma comment"?

... ачает #pragma comment в следующих словах? #pragma commen ...

Какой предопределенный макрос я могу использовать для определения целевой архитектуры в Clang?

... по которой я не могу 4 использовать sysctlbyname, заключается в том, что это 3 даст мне базовую архитектуру во время выполнения, но 2 когда arm64, например. имитирует armv7, sy ...

Макрос __FILE__ показывает полный путь

... ленный макрос __FILE__, доступный 3 в C, показывает полный путь к файл ...

В чем разница между макросом препроцессора #if и #ifdef Objective-C?

... методах)? Сейчас я использую их наизусть, было 1 бы здорово узнать, что происх ...

Что означает BIT() в этом макросе ядра Linux?

... 0) Что означает BIT(10)? Я не очень 3 хорошо знаком с C, но из того, что я знаю 2 (и исследовал), такой функции манипул ...

Constexpr против макросов

... де лучше использовать макросы, а где constexpr? Разве они 1 не одинаковы? #define ...

Что означает #define _POSIX_SOURCE?

... уп к большему 4 количеству библиотек в моей программе, или 3 я могу вызвать некоторые функции, которые 2 присутствуют непосредственно в C. Для чего 1 используется это ...

Как перевести градусы в радианы?

... д Obj-C в код 3 Swift, но я не знаю, каким должен быть эквивалент 2 этого кода? #define DEGREES_TO_RADIANS(degrees)((M_PI * degrees)/180) Я погуг ...

Как мне получить доступ к переменной _context в макросе в TWIG?

... ние страницы: Вы 4 можете передать весь контекст в качестве 3 аргумента, используя специальную переменную 2 _context. Каков синтаксис для передачи _context 1 в макрос и для доступа к ...

Одноименный макрос с разными аргументами

... {l<<value; Doit(l); } while(0) #define FI(value, level) do {l<<value ; Doit(l,leve ...

Встроенные комментарии Jinja2

... ]) }} {% macro Switch(var, caselist) %} {% for case, action in caselist%} CMP {{var}} {{case}} JNE {{LABEL}} {{action}} JMP {{LABELF}} {{LABEL}}: NOP {%- endfor %} {{LABELF}}: NOP {%- endmacro -%} В моем случае Jinja2 используется 1 как препроцессор мак ...

Макрос C: #if проверка на равенство

... Есть ли способ проверить числовое равенство 2 в макросах? Я хочу сделать что-то вроде #define choice 3 #if choice = ...

Пользовательский макрос EXPECT_NEAR в Google Test

... , поэтому 5 EXPECT_EQ(Vec3f(), Vec3f()) работает. Но поскольку они являются плавающими, я 4 бы хотел использовать макрос EXPECT_NEAR(float a, float b, float delta). Что я могу 3 сделать, чтобы использовать его как EXPECT_NEAR(vec_a, vec_b, float delta)? В настоящий 2 момент я просматриваю каждый элемент вектора 1 и делаю там EXPECT_NEAR. Это может быть ...

Почему не рекомендуется определять макросы в файлах заголовков?

... 2 не определялись в файле .h (заголовок). Какие 1 у этого недостатки? ...

C++ - enum vs. const vs. #define

... в случае с постоянными переменными, перечислимые типы отображаются в отладчике, что делает их в этом отношении более полезными, чем значения #defined. ...

Как повторить какое-то действие в Vim определенное время?

... и команд несколько раз. Скажем, я хочу 3 прокомментировать 5 строк, я бы использовал I//<Esc>j .j.j.j.j Есть 2 ...