GATE | GATE-CS-2006 | Question 57

Consider this C code to swap two integers and these five statements after it:

filter_none

edit
close

play_arrow

link
brightness_4
code

void swap(int *px, int *py) 
   *px = *px - *py; 
   *py = *px + *py; 
   *px = *py - *px; 
}

chevron_right


S1: will generate a compilation error
S2: may generate a segmentation fault at runtime depending on the arguments passed
S3: correctly implements the swap procedure for all input pointers referring to integers stored in memory locations accessible to the process
S4: implements the swap procedure correctly for some but not all valid input pointers
S5: may add or subtract integers and pointers.

(A) S1
(B) S2 and S3
(C) S2 and S4
(D) S2 and S5


Answer: (C)

Explanation: Same as http://quiz.geeksforgeeks.org/c-pointers-question-14/

Quiz of this Question



My Personal Notes arrow_drop_up


Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.