在 C 语言中,a 是指向变量 a 内存地址的指针,而 a 是一个普通变量。a 存储 a 中的值,而 a 存储自身的值。a 通过解引用访问指向的值,而 a 直接访问自身的值。&a 返回 a 的内存地址,而 a 返回指向值内存地址。

c语言中 *a 和 a 的区别
c语言中,*a和a是两个不同的概念,它们之间主要的区别如下:
-
类型:
*a是一个指向a变量内存地址的指针;而a是一个普通变量。 -
值:
*a的值是a变量中存储的值;而a的值本身。 -
运算:
*a可以通过解引用操作符(*)来访问它所指向的值;而a只能直接访问其自身的值。 -
地址:
&a返回a变量的内存地址;而*a返回a变量中存储的值的内存地址。
详细解释:
-
指针(*a):指针是一种指向变量内存地址的数据类型。
*a表示指向变量a的内存地址的指针。通过解引用操作符(*),可以访问该内存地址中存储的值。 -
变量(a):变量是一种可以存储值的命名内存位置。
a表示一个普通变量,它存储了一个具体的值。 -
解引用:解引用操作符(
*)用于访问指针所指向的值。例如,*a表示取a指针所指向的内存地址中存储的值。 -
地址运算符:地址运算符(
&)用于获取变量的内存地址。例如,&a返回a变量的内存地址。
示例:
2018年国内领先最专业的试客系统基于微软ASP.NET(C# NET4.0)+MSSQL架构开发,性能与安全性先天就比PHP语言好很多,系统主要活动类型:免费试用、折扣试用、红包试用、拍A发B等众多模式(支持淘宝、天猫、阿里、京东、拼多多、蘑姑街等,支持定制满足你的一切需求),另附带收藏/流量优化,推广联盟(可支持N级提成)、安全认证体系、微信公众号集成、交流论坛、帮助中心、招商等子模块,系统默
立即学习“C语言免费学习笔记(深入)”;
int a = 10;
int *p = &a;
printf("变量 a 的值:%d\n", a);
printf("指向 a 的指针 p 的值:%d\n", *p);输出:
变量 a 的值:10 指向 a 的指针 p 的值:10
在这个示例中,a是一个存储了值 10 的变量,p是一个指向a变量内存地址的指针。*p解引用指针,返回a变量中存储的值,即 10。










