在 c 语言中, 用于解引用指针,返回指向的值;& 用于取地址,返回指向该变量的指针。 通常用于访问或修改指针所指向的值;& 通常用于创建指针或传递引用。

C 语言中 * 和 & 的区别及使用方法详解
在 C 语言中,* 和 & 运算符用于处理指针,它们之间有着重要的区别。
运算符 *(解引用)
立即学习“C语言免费学习笔记(深入)”;
-
*运算符用于解引用指针,返回指针所指向的值。 - 语法:
*ptr,其中ptr是指向变量的指针。
示例:
int *ptr; int value = 10; ptr = &value; // 为 ptr 分配 value 的地址 *ptr = 20; // 将 value 的值修改为 20
运算符 &(取地址)
-
&运算符用于取变量的地址,返回指向该变量的指针。 - 语法:
&var,其中var是一个变量。
示例:
int value = 10; int *ptr = &value; // 为 ptr 分配 value 的地址
区别
*解引用指针,&取变量地址。*返回所指向的值,&返回指向该值的指针。&通常在创建指针变量或将引用作为函数参数传递时使用。*通常在访问指针所指向的值或修改该值时使用。
实战案例
以下是一个使用 * 和 & 运算符的实战案例:
#includeint main() { int value = 10; int *ptr = &value; // 为 ptr 分配 value 的地址 // 使用 * 解引用指针并打印值 printf("Value: %d\n", *ptr); // 使用 * 修改指针所指向的值 *ptr = 20; // 再次使用 * 打印修改后的值 printf("Modified value: %d\n", *ptr); return 0; }
输出:
Value: 10 Modified value: 20










