指针的初步学习

技术指针的初步学习 指针的初步学习1.指针变量计算机将内存分割为字节,字节可以存储八位的信息,而每个字节都有唯一的地址。如下,如果内存中有n个字节,可以把地址看作0到n-1的数地址
内容0  
0101

指针的初步学习

1.指针变量

把内存分成字节,可以存储八位信息,每个字节都有一个唯一的地址。如下所示,如果内存中有n个字节,地址可以看作是从0到n-1的数字。

地址

内容

0

01010011

一个

01110101

2

01110011

因此,在计算机中,每个变量都有一个对应的字节地址。如果一个变量占用一个以上的字节,第一个字节的地址称为该变量的地址。

由于地址的取值范围不同于整数,我们需要使用特殊的指针变量来存储地址。

比如p是指针变量,存储I的地址,假设p指向I;

2.指针变量的声明

int * p;

如上所述,int是类型,而*p是指针变量;它指向一个int类型的变量;

3.取地址运算符和间接寻址运算符

上面说了指针的说法,但没有把指针指向对象;

例如int * p=I;

即I的地址赋给指针变量P,即P指向I;

间接取址运算符

一旦指针变量指向一个对象,就可以使用*(间接寻址)来访问该对象的内容。

如果*p指向I,则I=5;

Printf ("%d ",*p)将输出5。

对于*和*,可以把*看作的逆运算。使用运算符生成指向变量的指针(即地址),使用*运算符返回原始变量。

J=*i和j=i的意思相同。

对于指向我的p,它意味着指向我所在的空间。你可以想象把我放在一个固定的柜子里。p表示机柜的位置。

因此,*p和我不仅具有相同的值。* p的变化也会改变I的值。

要求实现一个计算输入的两数的和与差的简单函数。的例子

void sum_diff(float op1、float op2、float *psum、float *pdiff)

{

* psum=op1 op2

* pdiff=op1-op2;

}

有如

*psum和*pdiff

传入变量的地址。您可以在函数中操作存储在变量空间中的东西,而无需函数传入值然后返回值。

就像知道柜子在哪里一样,我们用这个功能来存放、取出和更换柜子里的东西。

3指针赋值

语言允许指针与赋值操作符一起复制,但是这两个指针需要是相同的类型。

int i,j、*p、* q;

句子

p=I;

q=p;

我把I的地址抄给了P;

第二句直接把P的内容赋给Q;p和Q的作用相同,都指向I的地址,也就是I的变量空间。

但是

* p=* q;

不一样,这句话的意思是Q指向的变量值赋给p指向的变量。

如上*可视为的逆运算。因此

可以理解为:

指向I变量的p指针被认为是p=I;

q指向j变量,即q=j;

而*q是*q=*j

就是j变量本身。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/92781.html

(0)

相关推荐

  • PostgreSQL的相似搜索插件有哪些

    技术PostgreSQL的相似搜索插件有哪些这篇文章主要介绍“PostgreSQL的相似搜索插件有哪些”,在日常操作中,相信很多人在PostgreSQL的相似搜索插件有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好

    攻略 2021年11月10日
  • docx文件,Docx文件怎么打开呢

    技术docx文件,Docx文件怎么打开呢方法一docx文件、安装补丁法如果你的电脑中只安装了Word2003,而有一个文档却是2007或以上的那么要打开的办法你可以到微软件的网站下载补丁,或点击Word2007兼容补丁下

    生活 2021年10月31日
  • 送老公什么生日礼物,老公生日送什么礼物合适

    技术送老公什么生日礼物,老公生日送什么礼物合适夫妻这一生送老公什么生日礼物,即便是能够轰轰烈烈,也不会持久,平淡是最后的绝唱,人生的意义,深深蕴含于平凡生活中,平平淡淡相伴才是真。而如何在平淡相伴着的每一天里,都能仍旧保

    生活 2021年10月27日
  • 如何快速搭建实用的爬虫管理平台

    技术如何快速搭建实用的爬虫管理平台这篇文章主要讲解了“如何快速搭建实用的爬虫管理平台”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何快速搭建实用的爬虫管理平台”吧!爬虫

    攻略 2021年10月23日
  • keil如何仿真c51(keilc51流水灯程序设计及其仿真)

    技术KeilC51基础中如何利用仿真测试代码的运行时间KeilC51基础中如何利用仿真测试代码的运行时间,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。   

    攻略 2021年12月24日
  • Prometheus之Alertmanager使用帮助

    技术Prometheus之Alertmanager使用帮助 Prometheus之Alertmanager使用帮助root@node-02:/usr/local/alertmanager# ./aler

    礼包 2021年11月18日