C语言中取地址运算符是什么?


本文摘自PHP中文网,作者烟雨青岚,侵删。

在C语言中取地址运算符是“&”。“&”作为一元运算符,结果是右操作对象的地址;地址本身是一个抽象的概念,用于表示对象在存储器中的逻辑位置。

在C语言中取地址运算符是”&“

示例:

1

2

3

4

5

6

7

8

#include <stdio.h>

int main(void)

{

    int a = 0;

    int *p = &a;

    printf("The value is: %d/n", *p);

    return 0;

}

&作为一元运算符,结果是右操作对象的地址。

例如&x返回x的地址。

地址本身是一个抽象的概念,用于表示对象在存储器中的逻辑位置。至于对象,LZ现在只需知道包含常量、变量等数据就可以了。

1

scanf("%d,%d",&x,&y);

这里的&x表示x的地址,&y表示y的地址。scanf接收地址,然后把键盘(更确切地说是stdin输入流缓冲区)读入的信息按格式字符串的形式处理后存放到接收到的地址中。对于纯C来说,函数的参数是只能值参而不是变参,函数内部对参数的改变只影响参数本身而不影响调用函数时的实际参数(换句话说函数内部的只是副本)。所以这里不能向scanf传递x本身,需要用地址&x指明需要存放的位置,才能把值存到x中。

等系统地学完函数和指针传递函数参数以后,LZ应该会对这个有比较清楚的认识。

至于读键盘的活,是编译环境(包括操作系统底层)干的,和C语言本身无关

推荐教程:《C语言》

以上就是C语言中取地址运算符是什么?的详细内容!

相关阅读 >>

两分钟带你了解如何使用“strcpy()”函数

C语言和vb哪个简单

C语言怎么求字符串的长度并输出

C语言和vb语言的区别是什么?

C语言中的注释符号是什么

在嵌套使用if语句时,C语言规定else总是什么?

C语言自学难度高么?

C语言字符常量的合法表示形式是什么

C语言的标识符允许使用关键字吗?

C语言二进制输出的方法

更多相关阅读请进入《C语言》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...