Вопросы с тегом «macros»

115
Как определить платформу / компилятор из макросов препроцессора?

Я пишу кросс-платформенный код, который должен компилироваться в Linux, Windows, Mac OS. В Windows я должен поддерживать Visual Studio и Mingw. Есть некоторые фрагменты кода для конкретной платформы, которые я должен поместить в #ifdef .. #endifсреду. Например, здесь я разместил специальный код для...

115
Есть ли для Eclipse регистратор макросов? [закрыто]

Закрыто. Этот вопрос не соответствует рекомендациям по переполнению стека . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме Stack Overflow. Закрыт 6 лет назад . Уточните этот вопрос Есть ли хороший плагин Eclipse для записи и...

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

Я пытаюсь определить компилятор, использованный для компиляции моего исходного кода. Я легко могу найти предопределенные макросы для проверки MSVC или GCC ( например, см. Http://predef.sourceforge.net/ ), но я не могу найти ни одного макроса для проверки на наличие clang. Кто-нибудь знает,...

111
iOS Как определить iPhone X, iPhone 6 plus, iPhone 6, iPhone 5, iPhone 4 по макросу?

Как определить модель устройства по макросу? я использовал что-то подобное, но результат на симуляторе всегда IS_IPHONE_5 #define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) #define IS_IPHONE (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) #define IS_IPHONE_5 (IS_IPHONE...

107
Как передать определение макроса из аргументов командной строки «make» (-D) в исходный код C?

Я обычно передаю определения макросов из «make command line» в «makefile», используя параметр: -Dname = value. Определение доступно внутри make-файла. Я также передаю определения макросов из «makefile» в «исходный код», используя аналогичный параметр компилятора: -Dname = value (поддерживается во...

107
C Определение макроса для определения машины с прямым или обратным порядком байтов?

Есть ли однострочное определение макроса для определения порядка байтов машины. Я использую следующий код, но преобразовывать его в макрос было бы слишком долго. unsigned char test_endian( void ) { int test_var = 1; unsigned char *test_endian = (unsigned char*)&test_var; return (test_endian[0]...

107
Создание макроса C с ## и __LINE__ (конкатенация токенов с макросом позиционирования)

Я хочу создать макрос C, который создает функцию с именем на основе номера строки. Я подумал, что могу сделать что-то вроде (у реальной функции в фигурных скобках есть операторы): #define UNIQUE static void Unique_##__LINE__(void) {} Я надеялся, что это расширится до чего-то вроде: static void...

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

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

104
Запятая в макросе C / C ++

Скажем, у нас есть такой макрос #define FOO(type,name) type name Что мы могли бы использовать как FOO(int, int_var); Но не всегда так просто: FOO(std::map<int, int>, map_var); // error: macro "FOO" passed 3 arguments, but takes just 2 Конечно, мы могли: typedef std::map<int, int>...

100
Препроцессор C ++ __VA_ARGS__ количество аргументов

Простой вопрос, на который я не нашел ответа в сети. В макросах с переменными аргументами, как найти количество аргументов? Я согласен с препроцессором ускорения, если у него есть решение. Если это имеет значение, я пытаюсь преобразовать переменное количество аргументов макроса, чтобы увеличить...

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

В Objective-Cэто иногда полезно использовать статические строковые константы для определения альтернативных ключей API (например, дифференцируется между RELEASE и ключами DEBUG для аналитических пакетов, как MixPanel, Flurry или Crashlytics): #if DEBUG static NSString *const API_KEY = @"KEY_A";...

92
Как использовать макрос в файлах модуля?

У меня есть два модуля в отдельных файлах в одном ящике, в котором ящик был macro_rulesвключен. Я хочу использовать макросы, определенные в одном модуле, в другом модуле. // macros.rs #[macro_export] // or not? is ineffectual for this, afaik macro_rules! my_macro(...) // something.rs use macros;...

86
Макрос Vim на каждой строке визуального выделения

Я бы хотел запустить макрос для каждой строки в выделенном фрагменте, а не подсчитывать количество строк в голове. Например, я мог бы написать макрос для преобразования: Last, First В First Last и я бы хотел, чтобы он запускался во всех этих строках: Stewart, John Pumpkin, Freddy Mai, Stefan ......

85
воспроизвести макрос vim до конца буфера

Я хочу запустить макрос, который я только что записал в регистре " x", на каждой отдельной строке открытого буфера, от курсора до конца буфера в vim. Как я могу это сделать? Я знаю, что могу воспроизвести макрос n раз: 15@x ... или просто удерживайте, @пока не дойду до последней строки, но я хочу...

82
В чем смысл макроса PROTOTYPE, который просто расширяется до своих аргументов?

У меня есть файл заголовка, который содержит #define PROTOTYPE(s) s Какой в ​​этом смысл? Похоже, он просто заменит ввод самим собой. Есть множество других директив вокруг него, но только один , который , как представляется , есть какой - либо подшипник только что проверил , если он определен:...