Вопросы с тегом 'macros'

*** НЕ ИСПОЛЬЗУЙТЕ для языков VBA/MS-Office. Используйте вместо этого соответствующие теги [vba]. *** Макрос - это правило или шаблон, который определяет, как определенная последовательность ввода (часто последовательность символов) должна отображаться в выходной последовательности (также часто последовательность символов) в соответствии с определенной процедурой.
6
ответов

Что ":-!!" в коде C?

Я столкнулся с этим странным макрокодом в /usr/include/linux/kernel.h: /* Force a compilation error if condition is true, but also produce a result (of value 0 and type size_t), so the expression can be used e.g. in a structure initializer (or...
задан 10 февр. '12 в 17:50
6
ответов

Странные определения макросов TRUE и FALSE

Я видел следующие макроопределения в книге кодирования. #define TRUE '/'/'/' #define FALSE '-'-'-' Там не было объяснений. Пожалуйста, объясните мне, как они будут работать как TRUE и FALSE.
задан 03 дек. '15 в 12:46
10
ответов

Вероятные()/маловероятные() макросы в ядре Linux - как они работают? Какая их польза?

Я копал некоторые части ядра Linux и нашел такие вызовы: if (unlikely(fd < 0)) { /* Do something */ } или if (likely(!err)) { /* Do something */ } Я нашел определение их: #define likely(x) __builtin_expect((x),1) #define unlik...
задан 21 сент. '08 в 2:04
14
ответов

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

Чтение эссе Пола Грэма по языкам программирования можно было бы считать, что макросы Lisp - единственный путь. Будучи занятым разработчиком, работающим на других платформах, у меня не было привилегий использования макросов Lisp. Как кто-то, кто хоче...
задан 06 нояб. '08 в 10:33
1
ответ

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

Предположим, мы хотим написать макрос, который определяет анонимный класс с некоторыми членами или методами типа, а затем создает экземпляр этого класса, который статически вводится как структурный тип с этими методами и т.д. Это возможно с помощью м...
задан 17 янв. '13 в 4:31
2
ответов

как использовать #ifdef с условием ИЛИ?

Извините, что задал очень простой вопрос. Я хотел бы установить условие OR в директиве #ifdef.? Как это сделать? Я попробовал #ifdef LINUX | ANDROID ... .. #endif Это не сработало? Каков правильный путь?
задан 13 марта '12 в 13:51
70
ответов

Какое худшее в мире поведение макросов/препроцессоров, с которыми вы когда-либо сталкивались?

Какое худшее реальное макросы/препроцессорное злоупотребление, с которым вы когда-либо сталкивались (пожалуйста, не надуманные ответы IOCCC * haha ​​*)? Пожалуйста, добавьте короткий фрагмент или рассказ, если он действительно интересен. Цель сост...
задан 17 марта '09 в 4:57
10
ответов

Могу ли я записывать/воспроизводить макросы в Visual Studio 2012/2013/2015?

По-видимому, макросы были удалены из Visual Studio 2012. Есть ли плагин/расширение/инструмент, который позволит мне записывать и воспроизводить макросы клавиатуры (так же, как временный макрос записи/воспроизведения в Visual Studio 2010)? Например,...
задан 21 авг. '12 в 23:25
1
ответ

C многострочный макрос: do/while (0) vs scope block

Возможные дубликаты: Что нужно использовать во время (0), когда мы определяем макрос? Почему иногда существуют бессмысленные операторы do/while и if/else в макросах C/С++? do { … } while (0) what is it good for? Я видел несколько многострочных ...
задан 01 июля '09 в 7:06
8
ответов

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

У меня есть два макроса FOO2 и FOO3: #define FOO2(x,y) ... #define FOO3(x,y,z) ... Я хочу определить новый макрос FOO следующим образом: #define FOO(x,y) FOO2(x,y) #define FOO(x,y,z) FOO3(x,y,z) Но это не работает, потому что макросы не перег...
задан 01 авг. '12 в 17:42
4
ответов

Сохранение макросов vim

Кто-нибудь знает, как правильно сохранять/повторно использовать макросы, записанные внутри редактора vim?
задан 08 янв. '10 в 2:22
3
ответов

Что означает "# прагма-комментарий"?

Что означает #pragma comment в следующем? #pragma comment(lib, "kernel32") #pragma comment(lib, "user32")
задан 14 авг. '10 в 20:44
16
ответов

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

Стандартный предопределенный MACRO __FILE__, доступный на C, показывает полный путь к файлу. Есть ли способ сократить путь? Я имею в виду вместо /full/path/to/file.c Я вижу to/file.c или file.c
задан 13 дек. '11 в 13:57
2
ответов

Что делать во время (0), когда мы определяем макрос?

Возможный дубликат: Операторы Do-While и if-else в макросах C/С++ Я читаю ядро ​​linux, и я нашел много таких макросов: #define INIT_LIST_HEAD(ptr) do { \ (ptr)->next = (ptr); (ptr)->prev = (ptr); \ } while (0) Почему они использу...
задан 29 мая '09 в 3:05
2
ответов

Является ли #pragma когда-то частью стандарта С++ 11?

Традиционно стандартный и переносимый способ избежать включения нескольких заголовков в С++ заключался в использовании схемы директив #ifndef - #define - #endif pre-compiler, также называемой схемой макро-защиты (см. фрагмент кода ниже). #ifndef MY...
задан 16 мая '14 в 16:20