Categories:
.NET (357)
C (330)
C++ (183)
CSS (84)
DBA (2)
General (7)
HTML (4)
Java (574)
JavaScript (106)
JSP (66)
Oracle (114)
Perl (46)
Perl (1)
PHP (1)
PL/SQL (1)
RSS (51)
Software QA (13)
SQL Server (1)
Windows (1)
XHTML (173)
Other Resources:
I have seen function declarations that look like this
I've seen function declarations that look like this:
extern int func __((int, int));
What are those extra parentheses and underscores for?
✍: Guest
They're part of a trick which allows the prototype part of the function declaration to be turned off for a pre-ANSI compiler. Somewhere else is a conditional definition of the __ macro like this:
#ifdef __STDC__
#define __(proto) proto
#else
#define __(proto) ()
#endif
The extra parentheses in the invocation
extern int func __((int, int));
are required so that the entire prototype list (perhaps containing many commas) is treated as the single argument expected by the macro.
2015-05-23, 1808👍, 0💬
Popular Posts:
Explain simple Walk through of XmlReader ? In this section we will do a simple walkthrough of how to...
What is the concept of XPOINTER? XPOINTER is used to locate data within XML document. XPOINTER can p...
What is Traceability Matrix? Traceability Matrix is one of the document will prepare by QA.To make s...
What is effort variance? Effort Variance = (Actual effort – Estimated Effort) / Estimated Effort.
.NET INTERVIEW QUESTIONS - What are Daemon threads and how can a thread be created as Daemon? Daemon...