在C语言中,(星号)用于间接寻址和取值,而&(地址符)用于取地址和引用。获取变量或指针指向的值,用于修改值和声明指针变量;&获取变量地址,用于分配地址给指针变量和传递地址作为函数参数。

C语言中*与&的区别
符号*和&在C语言中是不同的运算符,用于不同的目的:
含义:
星号*:表示间接寻址或指针取值运算符。地址符&:表示取地址或引用运算符。
用途:
立即学习“C语言免费学习笔记(深入)”;
星号*:
获取变量或指针指向的变量的值。修改变量或指针指向的变量的值。作为指针变量的声明的一部分。
地址符&:
获取变量的地址(内存位置)。将变量的地址分配给指针变量。传递变量的地址作为函数参数。
示例:
int main() { int x = 10; int *ptr = &x; // ptr指向x的地址 // 获取x的值 printf("x = %dn", x); // 使用指针获取x的值 printf("*ptr = %dn", *ptr); // 使用指针修改x的值 *ptr = 20; printf("x = %dn", x); // x的值已经改变为20 return 0;}
注意:
*ptr表示指针变量ptr指向的变量的值,而&x表示变量x的地址。通常情况下,指针变量是一个类型为“变量类型*”的变量,指向特定类型的变量。取地址和间接寻址运算符可以组合使用来实现指针算术和其他高级数据结构。
以上就是c语言中*与&的区别的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1448327.html
微信扫一扫
支付宝扫一扫