Вопросы с тегом '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 в 14:50
10
Как работают вероятные/маловероятные макросы в ядре Linux и в чем их выгода?
Я копал некоторые части ядра Linux и нашел такие вызовы:
if (unlikely(fd < 0))
{
/* Do something */
}
или
if (likely(!err))
{
/* Do something */
}
Я нашел определение их:
#define likely(x) __builtin_expect((x),1)
#define unlik...
20 сент. '08 в 23:04
6
Странные определения макросов TRUE и FALSE
Я видел следующие макроопределения в книге кодирования.
#define TRUE '/'/'/'
#define FALSE '-'-'-'
Там не было объяснений.
Пожалуйста, объясните мне, как они будут работать как TRUE и FALSE.
03 дек. '15 в 9:46
14
Что делает макросы Lisp настолько особенными?
Чтение эссе Пола Грэма по языкам программирования можно было бы считать, что макросы Lisp - единственный путь. Будучи занятым разработчиком, работающим на других платформах, у меня не было привилегий использования макросов Lisp. Как кто-то, кто хоче...
06 нояб. '08 в 7:33
10
Могу ли я записывать/воспроизводить макросы в Visual Studio 2012/2013/2015/2017/2019?
По-видимому, макросы были удалены из Visual Studio 2012.
Есть ли плагин/расширение/инструмент, который позволит мне записывать и воспроизводить макросы клавиатуры (так же, как временный макрос записи/воспроизведения в Visual Studio 2010)?
Например,...
21 авг. '12 в 20:25
1
Получение структурного типа с помощью методов анонимного класса из макроса
Предположим, мы хотим написать макрос, который определяет анонимный класс с некоторыми членами или методами типа, а затем создает экземпляр этого класса, который статически вводится как структурный тип с этими методами и т.д. Это возможно с помощью м...
17 янв. '13 в 1:31
2
как использовать #ifdef с условием ИЛИ?
Извините, что задал очень простой вопрос. Я хотел бы установить условие OR в директиве #ifdef.?
Как это сделать?
Я попробовал
#ifdef LINUX | ANDROID
...
..
#endif
Это не сработало? Каков правильный путь?
13 мар. '12 в 10:51
70
Какое худшее в мире поведение макросов/препроцессоров, с которыми вы когда-либо сталкивались?
Какое худшее реальное макросы/препроцессорное злоупотребление, с которым вы когда-либо сталкивались (пожалуйста, не надуманные ответы IOCCC * haha *)?
Пожалуйста, добавьте короткий фрагмент или рассказ, если он действительно интересен. Цель сост...
17 мар. '09 в 1:57
5
Что означает "# прагма-комментарий"?
Что означает #pragma comment в следующем?
#pragma comment(lib, "kernel32")
#pragma comment(lib, "user32")
14 авг. '10 в 17:44
1
C многострочный макрос: do/while (0) vs scope block
Возможные дубликаты: Что нужно использовать во время (0), когда мы определяем макрос? Почему иногда существуют бессмысленные операторы do/while и if/else в макросах C/С++? do { … } while (0) what is it good for?
Я видел несколько многострочных ...
01 июл. '09 в 4:06
22
Макрос __FILE__ показывает полный путь
Стандартный предопределенный MACRO __FILE__, доступный на C, показывает полный путь к файлу. Есть ли способ сократить путь? Я имею в виду вместо
/full/path/to/file.c
Я вижу
to/file.c
или
file.c
13 дек. '11 в 10:57
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 в 14:42
4
Сохранение макросов vim
Кто-нибудь знает, как правильно сохранять/повторно использовать макросы, записанные внутри редактора vim?
07 янв. '10 в 23:22
6
Что делает макрос Q_OBJECT? Почему все объекты Qt нуждаются в этом макросе?
Я только начал использовать Qt и заметил, что все определения класса примера имеют макрос Q_OBJECT в качестве первой строки. Какова цель этого макроса препроцессора?
02 сент. '09 в 15:59
2
Что делать во время (0), когда мы определяем макрос?
Возможный дубликат: Операторы Do-While и if-else в макросах C/С++
Я читаю ядро linux, и я нашел много таких макросов:
#define INIT_LIST_HEAD(ptr) do { \
(ptr)->next = (ptr); (ptr)->prev = (ptr); \
} while (0)
Почему они использу...
29 мая '09 в 0:05