c=*p1;*p1++=*p2--;*p2=c;
时间: 2024-04-23 14:18:48 浏览: 132
在C语言中*p++与(*p)++的区别
这段代码的功能是将指针p1所指向的值赋给变量c,然后将指针p2所指向的值赋给指针p1所指向的位置,并将指针p2向前移动一位,最后将变量c的值赋给指针p2所指向的位置[^1]。
下面是一个示例演示:
```c
#include <stdio.h>
void swap(int *p1, int *p2) {
int c = *p1;
*p1++ = *p2--;
*p2 = c;
}
int main() {
int a = 10;
int b = 20;
int *p1 = &a;
int *p2 = &b;
printf("Before swap: a=%d, b=%d\n", a, b);
swap(p1, p2);
printf("After swap: a=%d, b=%d\n", a, b);
return 0;
}
```
输出结果:
```
Before swap: a=10, b=20
After swap: a=20, b=10
```
阅读全文