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

GATE · 2006 · CS

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

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

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.

  1. A.

    S1

  2. B.

    S2 and S3

  3. C.

    S2 and S4

  4. D.

    S2 and S5

Attempted by 228 students.

Sign up free to check your answer

Sign up free

Explore the full course: Gate Guidance By Sanchit Sir

Loading lesson…