C语言指针“*”与“&”的十分钟-创新互联

指针的概念:

创新互联建站专注于仙居企业网站建设,成都响应式网站建设公司,商城系统网站开发。仙居网站建设公司,为仙居等地区提供建站服务。全流程按需策划,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务

  指针是一个值为内存地址的变量(或数据对象)。        

其实指针不难理解,只需要把它当做带箭头的线,这条线指向一个内存地址就能看懂。

  与指针相关的两个运算符:‘ * ’  , ‘ & ’

以我目前程度,为了确保内容的准确性,只对指针大军中的基础-指针变量 提出见解与解释,如果能够解决对于刚刚接触 C语言 的同学在指针上的问题出谋献策,是吾之荣幸。若有误解,还望海涵 并 提出宝贵见解。

以   指针变量

int d = 123;

int * p = &d; 

为例:        

* :代表声明的变量 p 是一个 指针;p指向d,p变量中存的就是 d 变量在内存中的地址。

  &:一为地址运算符,表示 取到d变量名的地址。其后跟哪个变量,就是表示哪个变量在内存中的地址。二是位运算符,表示按位与,再此只针对地址运算符解释。

  * 与 & 是刚好相反的两个运算符。

假设变量 d 在内存中的地址为:0060FF18:

附上代码实例:

#include#includeint main()
{
    int d = 123;
    int *p = &d;

    printf("%d\n",d);

    printf("d position is %p\n",&d);

    printf("p -->%p\n",p);

    printf("*p -->%d\n",*p);

    return 0;
}

得到以下结果:

 

可以参考下图 

在C语言中,指针的用途很多,有指针操作数组的指针数组,用在函数中的指针:函数指针指针函数,甚至是函数指针数组以及 指向指针的函数指针数组。其复杂程度见仁见智。                 以此篇开篇,以后还会在家庭中提出有关 C && PYTHON的各种问题和见解。

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


分享名称:C语言指针“*”与“&”的十分钟-创新互联
标题URL:http://ybzwz.com/article/dheeig.html