📜  门| GATE-CS-2006 |第 57 题

📅  最后修改于: 2021-09-25 06:27:26             🧑  作者: Mango

考虑这个 C 代码来交换两个整数和它后面的五个语句:

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

S1:会产生编译错误
S2:可能会在运行时根据传递的参数生成分段错误
S3:正确实现所有输入指针的交换过程,这些指针指向存储在进程可访问的内存位置中的整数
S4:为一些但不是所有的有效输入指针正确实现交换过程
S5:可以加减整数和指针。

(一) S1
(B) S2 和 S3
(C) S2 和 S4
(D) S2 和 S5答案: (C)
说明:同 https://www.geeksforgeeks.org/c-pointers-question-14/
这个问题的测验