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
7,318
Replies
0
Views
2,685
Replies
4
Views
3,923
Latest Threads
Replies
0
Views
568
Replies
2
Views
539
Replies
1
Views
481
Replies
2
Views
1,067
Replies
1
Views
693
Recommended Threads
Replies
6
Views
4,653
Replies
3
Views
4,786
Replies
4
Views
4,347
Replies
0
Views
2,885
Replies
14
Views
10,152

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