c语言中指针与指针相互赋值
时间: 2023-11-23 08:51:13 浏览: 278
在C语言中,指针与指针之间可以相互赋值。当把一个指针赋值给另一个指针时,两个指针将指向同一个内存地址。这意味着它们将共享相同的数据,并且对其中一个指针所做的更改会影响到另一个指针。
以下是一个示例代码,演示了指针与指针之间相互赋值的情况:
```c
#include <stdio.h>
int main() {
int num1 = 10;
int *ptr1 = &num1; // 将指针ptr1指向num1的地址
int *ptr2; // 声明一个指针ptr2
ptr2 = ptr1; // 将ptr1赋值给ptr2
printf("num1 = %d\n", num1);
printf("*ptr1 = %d\n", *ptr1);
printf("*ptr2 = %d\n", *ptr2);
return 0;
}
```
输出结果为:
```
num1 = 10
*ptr1 = 10
*ptr2 = 10
```
在这个示例中,我们先声明了一个整型变量`num1`,然后创建了一个指向`num1`的指针`ptr1`。接着,我们声明了另一个指针`ptr2`,并将`ptr1`的值赋给了`ptr2`。由于两个指针现在都指向同一个内存地址,因此`*ptr1`和`*ptr2`都能访问到`num1`的值。
阅读全文