Результаты поиска по запросу "c-preprocessor"

1 ответ

иначе нет: /, но интересно :)

спользовании препроцессора C можно привести строковый макрос в следующий аргумент: #define TO_STRING(x) "a string with " #xи поэтому при использовании, результат будет следующим: TO_STRING(test) будет расширяться до:"a string with test" Есть ...

8 ответов

 вам не нужны макросы препроцессора в большинстве случаев.

ли C # определять макросы, как это делается в языке программирования C с помощью операторов препроцессора? Я хотел бы упростить регулярную типизацию некоторых повторяющихся утверждений, таких как следующее: Console.WriteLine("foo");

1 ответ

Они мне нравятся. Они позволяют делать интеллектуальные вещи, как это. :)

емя чтения http://en.wikipedia.org/wiki/C_preprocessor#Multiple_evaluation_of_side_effects [http://en.wikipedia.org/wiki/C_preprocessor#Multiple_evaluation_of_side_effects] Я наткнулся на этот пример: \#define max(a,b) \ ({ typeof (a) _a = (a); ...

ТОП публикаций

1 ответ

Можно ли передать заключенный в скобки инициализатор в качестве параметра макроса?

У меня есть функция, которую я называю так: literal<long[2]>({1, 2});Я хочу написать макрос, который расширяется до этого утверждения, например: MYMACRO(long[2], {1, 2})К сожалению, препроцессор не знает о сопоставлении скобок, поэтому он видит ...

2 ответа

Наверное, будет такой же вопрос: почему люди не используют возврат в основном? Просто потому, что подразумевается с 99?

р #define Echo(a) a #define Echo(a) (a)Я понимаю, что здесь, вероятно, нет существенной разницы, но зачем вам когда-нибудь включатьa в скобках внутри тела макроса? Как это меняет это?

3 ответа

Изменение макроса во время выполнения в C

Я определил макрос. Но мне нужно изменить это значение во время выполнения в зависимости от условия. Как я могу это реализовать?

1 ответ

Включение заголовочного файла из другого каталога

У меня есть основной каталогA с двумя подкаталогамиB а такжеC. каталогB содержит заголовочный файлstructures.c: #ifndef __STRUCTURES_H #define __STRUCTURES_H typedef struct __stud_ent__ { char name[20]; int roll_num; }stud; #endifкаталогC ...

3 ответа

Объективный синтаксис «#if»

Меня немного смущает "фунт если" или#if Синтаксис я вижу, когда я смотрю на некоторые классы. Например: #if someConstant == someNumber do something #elif etcпротив: if (someConstant == someNumber) do something else if { do more stuff ...

2 ответа

Конкатенация препроцессора для пути включения

У меня есть набор включений, которые находятся в удаленном каталоге, что означает, что для их включения требуется длинное включение, например: #include "../../Path/to/my/file.h"Если у меня их несколько, это становится немного неудобно, поэтому я ...

2 ответа

ANSI C: стандартное определение размера строк __DATE__ и __TIME__?

Существует ли стандартное определение размера строк __DATE__ и __TIME__ в ANSI C? Мотивация этого вопроса: У меня есть два приложения, работающие на двух разных процессорах. Во время выполнения приложение № 1 получает дату и время (как часть ...