What is the answer?

sachingoyal

New member
Joined
Aug 1, 2013
Messages
2
Points
0
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

:thankyou::thankyou::thankyou:
 

Bulan

Member
Registered
Joined
Sep 12, 2013
Messages
19
Points
0
The answer is C:
Because, the code won't compile since statement of t can't occur within parenthesis.
 
Older Threads
Newer Threads
Replies
4
Views
6,775
Replies
0
Views
2,508
Replies
4
Views
3,659
Latest Threads
Replies
1
Views
155
Replies
1
Views
132
Replies
2
Views
797
Recommended Threads
Replies
4
Views
3,201
Replies
11
Views
4,535
Replies
57
Views
24,293
Replies
6
Views
5,792
jms
Replies
2
Views
4,057

Sponsors

Tag Cloud

You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an alternative browser.

Top