|
- c++ - Why use #define instead of a variable - Stack Overflow
What is the point of #define in C++? I've only seen examples where it's used in place of a "magic number" but I don't see the point in just giving that value to a variable instead
- How can I define a define in C? - Stack Overflow
The question is if users can define new macros in a macro, not if they can use macros in macros
- What is the difference between #define and const? [duplicate]
The #define directive is a preprocessor directive; the preprocessor replaces those macros by their body before the compiler even sees it Think of it as an automatic search and replace of your source code A const variable declaration declares an actual variable in the language, which you can use well, like a real variable: take its address, pass it around, use it, cast convert it, etc Oh
- How can I use #if inside #define in the C preprocessor?
I want to write a macro that spits out code based on the Boolean value of its parameter So say DEF_CONST(true) should be expanded into const, and DEF_CONST(false) should be expanded into nothing
- How do I show the value of a #define at compile-time?
I know that this is a long time after the original query, but this may still be useful This can be done in GCC using the stringify operator "#", but it requires two additional stages to be defined first #define XSTR(x) STR(x) #define STR(x) #x The value of a macro can then be displayed with: #pragma message "The value of ABC: " XSTR(ABC) See: 3 4 Stringification in the gcc online
- Is it possible to use a if statement inside #define?
As far as I know, what you're trying to do (use if statement and then return a value from a macro) isn't possible in ISO C but it is somewhat possible with statement expressions (GNU extension) Since #define s are essentially just fancy text find-and-replace, you have to be really careful about how they're expanded I've found that this works on gcc and clang by default:
- How to define a two-dimensional array? - Stack Overflow
I want to define a two-dimensional array without an initialized length like this: Matrix = [][] But this gives an error: IndexError: list index out of range
- c++ - static const vs. #define - Stack Overflow
Is it better to use static const variables than #define preprocessor? Or does it maybe depend on the context? What are advantages disadvantages for each method?
|
|
|