query: Purpose of #define foo() do { } while (0)
positive_passages.docid: 8979
positive_passages.text: Why use apparently meaningless do-while and if-else statements in macros?
negative_passages.docid: 73300
negative_passages.text: How do `>` and `>>` work?
negative_passages.docid: 22690
negative_passages.text: What is this strange function definition syntax in C?
negative_passages.docid: 18646
negative_passages.text: Swallowing comma in variadic macros on compilers that do not recognise ##
negative_passages.docid: 117634
negative_passages.text: Macros with # as the last parameter
negative_passages.docid: 151288
negative_passages.text: The ## operator in C
negative_passages.docid: 1567
negative_passages.text: In C++11, does `i += ++i + 1` exhibit undefined behavior?
negative_passages.docid: 155155
negative_passages.text: Parentheses in pure functions: # & vs. ( # &)
negative_passages.docid: 78469
negative_passages.text: Is a closure for dereferencing variables useful?
negative_passages.docid: 36647
negative_passages.text: Why does printf("%f",0); give undefined behavior?
negative_passages.docid: 53638
negative_passages.text: What is the purpose of the "do" keyword in Bash for loops?
negative_passages.docid: 127109
negative_passages.text: What does #x inside a C macro mean?
negative_passages.docid: 123705
negative_passages.text: Why does a=0; let a++ return exit code 1?
negative_passages.docid: 48170
negative_passages.text: What is the purpose of a question mark after a type (for example: int? myVariable)?
negative_passages.docid: 42605
negative_passages.text: Is there a technical reason to use > (<) instead of != when incrementing by 1 in a 'for' loop?
negative_passages.docid: 82369
negative_passages.text: What does #{...} mean?
negative_passages.docid: 40350
negative_passages.text: What does ## mean for the C(C++) preprocessor?