指针(*)存储变量地址,用于访问和修改变量值。地址运算符(&)获取变量地址,可将其赋值给指针或传递给函数。区别在于:指针可解引用,而地址运算符本身不能访问变量值。

C语言中指针(*)和地址运算符(&)的应用场景与区别
指针(*)
* 符号,后面跟变量名用途:
立即学习“C语言免费学习笔记(深入)”;
地址运算符(&)
& 符号,前面是变量名用途:
立即学习“C语言免费学习笔记(深入)”;
区别
实战案例
以下代码示例演示了指针和地址运算符在 C 语言中的使用:
#include <stdio.h>
int main() {
int x = 10;
// 获取 x 的地址并将其赋值给指针 p
int *p = &x;
// 使用解引用运算符 * 访问和修改 x 的值
*p += 5;
// 打印修改后的 x 值
printf("x: %d\n", x); // 输出:15
// 传递 p 指针作为函数的参数
myFunction(p);
return 0;
}
void myFunction(int *ptr) {
// 修改指向值的变量
*ptr = 20;
}在这个示例中:
*p 解引用指针 p 并访问指向的变量 x。myFunction 接收指向 x 的指针 p,并通过 *ptr 修改 x 的值。以上就是掌握C语言中*和&的应用场景与区别的详细内容,更多请关注php中文网其它相关文章!
C语言怎么学习?C语言怎么入门?C语言在哪学?C语言怎么学才快?不用担心,这里为大家提供了C语言速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号