"Act well your part; there all honor lies."
- Alexander Pope
|
C Programming - C Preprocessor - Discussion
|
| 1. |
What will the SWAP macro in the following program be expanded to on preprocessing? will the code compile?
#include<stdio.h>
#define SWAP(a, b, c)(c t; t=a, a=b, b=t)
int main()
{
int x=10, y=20;
SWAP(x, y, int);
printf("%d %d\n", x, y);
return 0;
}
|
| [A]. |
It compiles | | [B]. |
Compiles with an warning | | [C]. |
| Not compile |
|
| | [D]. |
Compiles and print nothing |
Answer: Option C
Explanation:
The code won't compile since declaration of t cannot occur within parenthesis.
|
|
Padhu said:
(Tue, Jul 27, 2010 09:46:02 PM)
|
|
| |
| Which parentheis that cannot occur |
|
|
|