当前位置: 首页 > news >正文

阿里云服务器建设网站手游开服网

阿里云服务器建设网站,手游开服网,网站建设用免费素材,wordpress知更鸟模板内存 物理存储器和存储地址空间 物理存储器#xff1a;实际存在的具体存储器芯片。比如#xff1a;内存条、RAM芯片、ROM芯片。 存储地址空间#xff1a;对存储器编码的范围。 编码#xff1a;对每个物理存储单元#xff08;一个字节#xff09;分配一个号码寻址…内存 物理存储器和存储地址空间 物理存储器实际存在的具体存储器芯片。比如内存条、RAM芯片、ROM芯片。 存储地址空间对存储器编码的范围。 编码对每个物理存储单元一个字节分配一个号码寻址可以根据分配的号码找到相应的存储单元完成数据的读写 内存地址 将内存抽象成一个很大的一维字符数组。编码就是对内存的每一个字节分配一个32位或64位的编号与32位或者64位处理器相关。这个内存编号我们称之为内存地址。 内存中的每一个数据都会分配相应的地址char:占一个字节分配一个地址int: 占四个字节分配四个地址float、struct、函数、数组等 指针和指针变量 指针就是地址地址就是指针 int a; int b[]; int* p;上述代码中a、和b和p都是地址也都是指针。 指针变量是存放地址的变量 通常我们叙述时会把指针变量简称为指针实际他们含义并不一样 指针的基础知识 指针变量的定义和使用 定义指针的方式如下 数据类型* 变量名 其中*表示该变量为指针变量数据类型表示该指针变量保存的是哪一种数据类型的地址也就是指针变量指向哪一种数据类型。 访问指针变量指向的内存空间的数据 *指针变量 此处的*为取值运算符。 指针变量保存的是内存地址*指针变量就表示访问该地址对应的内存空间。对*指针变量操作其实就是读写该内存空间的数据。 #includestdio.hint main() {int a 10;int* p;p a;printf(a %d\n, a);printf(p指向的数据%d\n, *p);printf(变量a的地址%p\n, a);printf(指针变量p存的地址%p\n, p);return 0; }运行上面代码结果如下 注意可以取得一个变量在内存中的地址。但是不能取寄存器变量因为寄存器变量不在内存里而在CPU里面所以是没有地址的。 使用指针访问数据的原理 不同类型的数据在内存中占用不同的字节数指针变量保存的是数据首个字节的地址。系统根据指针变量保存的地址找到首个字节后再根据指针指向的数据类型顺位读取不同的字节长度从而访问到完整的数据。 比如一个int型变量a占4字节指针变量int* p只保存了a在内存中的首个字节的地址。当操作*p时系统会先根据该地址找到首个字节然后再顺位读取3个字节总共读取了4个字节从而取出变量a的值。 通过指针间接修改变量的值 #includestdio.hint main() {int a 10;int* p;p a;printf(a %d\n, a);printf(p指向的数据%d\n, *p);printf(变量a的地址%p\n, a);printf(指针变量p存的地址%p\n, p);*p *p 1;printf(p指向的数据加1后a %d\n, a);printf(p指向的数据加1后p指向的数据%d\n, *p);return 0; }运行上面的代码结果如下 在定义指针类型时一定要和指向的变量类型是一样的才行。 #includestdio.hint main() {char a 97;int* p a;printf(a的值%d\n, a);printf(*p的值%d\n, *p);return 0; }运行上面的代码结果如下 上面代码中虽然指针变量p保存的是字符变量a的地址但是p是指向int型数据的所以在找到a的地址后还会顺位读取3个字节的数据。 指针大小 windows中数据存储采用小端对齐的方式。也就是数据的低位放在地址小的内存中。 指针也是一种数据类型所以可以使用sizeof()测量指针的大小得到的总是4或8。 这是因为指针存储的是内存地址。在32位处理器中内存地址是一个32位的编号在64位处理器中内存地址是一个64位的编号。 所以在32位处理器中sizeof(指针)得到的总是4在64位处理器中sizeof(指针)得到的总是8。 在visio studio中可以在下图中选择基于32位或64位的处理器编译从而使sizeof(指针)得到不同的结果。 int main() {int* p1;int** p2;char* p3;char** p4;printf(sizeof(p1) %d\n, sizeof(p1));printf(sizeof(p2) %d\n, sizeof(p2));printf(sizeof(p3) %d\n, sizeof(p3));printf(sizeof(p4) %d\n, sizeof(p4));printf(sizeof(double *) %d\n, sizeof(double*));return 0; }上述代码基于32位处理器编译运行后结果如下 上述代码基于64位处理器编译运行后结果如下 野指针和空指针 野指针 任意数值赋值给指针变量没有意义因为这样的指针就成了野指针此指针指向的区域是未知(操作系统可能不允许操作此指针指向的内存区域)。所以野指针不会直接引发错误操作野指针指向的内存区域可能会出问题。 int main() {int* p 100;/*操作系统将0255的内存空间作为系统占用不允许被访问操作*/printf(%d\n, *p);return 0; }空指针 为了标志此指针变量没有指向任何变量(空闲可用)C语言中可以把NULL赋值给此指针这样就标志此指针为空指针。 int *p NULL;NULL是一个值为0的宏常量 #define NULL ((void *)0)空指针可用于条件判断 int* p NULL;if (p NULL) {printf(我是一个空指针\n);}else {printf(我不是一个空指针\n);}万能指针void * 万能指针可以接收任意数据类型的地址。但不能直接访问万能指针指向的内存空间因为系统找到数据的首个字节后不知道接下来要顺位读取多少个字节。 必须先将万能指针强转为某个具体类型的指针变量后才可以访问。 #includestdio.hint main() {int a 10;void* p a;printf(变量a的值%d\n, a);//printf(万能指针p指向的值%d\n, *p);//不能直接访问万能指针指向的内存空间printf(万能指针p指向的值%d\n, *(int*)p);*(int*)p *(int*)p 1;printf(加1后变量a的值%d\n, a);printf(加1后万能指针p指向的值%d\n, *(int*)p);return 0; }执行上面代码结果如下 const修饰的指针变量 const 数据类型* 变量名const修饰数据类型说明该指针变量指向的内存空间可读不可写。 数据类型* const 变量名const修饰变量名说明该指针变量保存的内存地址可读不可写。 const 数据类型* const 变量名const既修饰数据类型又修饰变量名说明该指针变量指向的内存空间可读不可写保存的内存地址也是可读不可写的。 #includestdio.hint main() {const int a 10;//a 20;//errint b 20;const int* p a;printf(指针变量p指向的值%d\n,*p);//*p 30;//errp b;//okprintf(指针变量p指向的值%d\n, *p);int* const p2 a;printf(指针变量p2指向的值%d\n, *p2);//p2 b;//err*p2 30;//okprintf(指针变量p2指向的值%d\n, *p2);printf(a的值%d\n, a);const int* const p3 b;//*p3 40;//err//p3 a;//errprintf(指针变量p3指向的值%d\n, *p3);b 40;printf(指针变量p3指向的值%d\n, *p3);return 0; }运行上面代码结果如下 const只能限定它所修饰的指针变量我们不能通过这个指针变量来修改指向的内存空间的数据或修改这个指针变量保存的内存地址。但是我们能通过其它指针变量来修改它们。 #includestdio.hint main() {int a 10;int b 20;const int* p a;//*p 20;//err 不能通过指针变量p改变a的值a 30;//okprintf(a的值%d\n, a);printf(*p的值%d\n, *p);const int* const p2 a;int** p3 p2;//*p2 20;//err 不能通过指针变量p2改变a的值//p2 b;//err 不能改变指针变量p2的指向即不能改变p2保存的内存地址**p3 40;//ok 通过指针变量p3改变a的值printf(通过指针变量p3改变a的值后a的值%d\n, a);printf(通过指针变量p3改变a的值后*p2的值%d\n, *p2);printf(通过指针变量p3改变a的值后, **p3的值%d\n, **p3);*p3 b;//ok 通过指针变量p3改变指针变量p2的指向printf(通过指针变量p3改变指针变量p2的指向后*p2的值%d\n, *p2);printf(通过指针变量p3改变指针变量p2的指向后, **p3的值%d\n, **p3);return 0; } 运行上面的代码结果如下
文章转载自:
http://www.morning.zkqjz.cn.gov.cn.zkqjz.cn
http://www.morning.qbkw.cn.gov.cn.qbkw.cn
http://www.morning.nwclg.cn.gov.cn.nwclg.cn
http://www.morning.ntzbr.cn.gov.cn.ntzbr.cn
http://www.morning.ghyfm.cn.gov.cn.ghyfm.cn
http://www.morning.skrh.cn.gov.cn.skrh.cn
http://www.morning.wfyqn.cn.gov.cn.wfyqn.cn
http://www.morning.mgskc.cn.gov.cn.mgskc.cn
http://www.morning.qfrsm.cn.gov.cn.qfrsm.cn
http://www.morning.gmgnp.cn.gov.cn.gmgnp.cn
http://www.morning.qzbwmf.cn.gov.cn.qzbwmf.cn
http://www.morning.nqpxs.cn.gov.cn.nqpxs.cn
http://www.morning.xqqcq.cn.gov.cn.xqqcq.cn
http://www.morning.tpfny.cn.gov.cn.tpfny.cn
http://www.morning.bzfwn.cn.gov.cn.bzfwn.cn
http://www.morning.nfdty.cn.gov.cn.nfdty.cn
http://www.morning.zmzdx.cn.gov.cn.zmzdx.cn
http://www.morning.ykwqz.cn.gov.cn.ykwqz.cn
http://www.morning.gmrxh.cn.gov.cn.gmrxh.cn
http://www.morning.ffydh.cn.gov.cn.ffydh.cn
http://www.morning.rwbh.cn.gov.cn.rwbh.cn
http://www.morning.fnwny.cn.gov.cn.fnwny.cn
http://www.morning.djpzg.cn.gov.cn.djpzg.cn
http://www.morning.jlrym.cn.gov.cn.jlrym.cn
http://www.morning.qwrb.cn.gov.cn.qwrb.cn
http://www.morning.drytb.cn.gov.cn.drytb.cn
http://www.morning.ktbjk.cn.gov.cn.ktbjk.cn
http://www.morning.qkgwx.cn.gov.cn.qkgwx.cn
http://www.morning.mbmtz.cn.gov.cn.mbmtz.cn
http://www.morning.bfgbz.cn.gov.cn.bfgbz.cn
http://www.morning.qwpdl.cn.gov.cn.qwpdl.cn
http://www.morning.rzcfg.cn.gov.cn.rzcfg.cn
http://www.morning.jqcrf.cn.gov.cn.jqcrf.cn
http://www.morning.fsrtm.cn.gov.cn.fsrtm.cn
http://www.morning.trtdg.cn.gov.cn.trtdg.cn
http://www.morning.mgmyt.cn.gov.cn.mgmyt.cn
http://www.morning.lsqmb.cn.gov.cn.lsqmb.cn
http://www.morning.psdsk.cn.gov.cn.psdsk.cn
http://www.morning.ptysj.cn.gov.cn.ptysj.cn
http://www.morning.dzqyn.cn.gov.cn.dzqyn.cn
http://www.morning.hrpjx.cn.gov.cn.hrpjx.cn
http://www.morning.hlnrj.cn.gov.cn.hlnrj.cn
http://www.morning.ejknty.cn.gov.cn.ejknty.cn
http://www.morning.rbhcx.cn.gov.cn.rbhcx.cn
http://www.morning.srgwr.cn.gov.cn.srgwr.cn
http://www.morning.roymf.cn.gov.cn.roymf.cn
http://www.morning.fpqsd.cn.gov.cn.fpqsd.cn
http://www.morning.cwcdr.cn.gov.cn.cwcdr.cn
http://www.morning.btsls.cn.gov.cn.btsls.cn
http://www.morning.zydr.cn.gov.cn.zydr.cn
http://www.morning.rchsr.cn.gov.cn.rchsr.cn
http://www.morning.nzcys.cn.gov.cn.nzcys.cn
http://www.morning.mnlk.cn.gov.cn.mnlk.cn
http://www.morning.hjrjy.cn.gov.cn.hjrjy.cn
http://www.morning.fnmtc.cn.gov.cn.fnmtc.cn
http://www.morning.cmldr.cn.gov.cn.cmldr.cn
http://www.morning.zdzgf.cn.gov.cn.zdzgf.cn
http://www.morning.lgmty.cn.gov.cn.lgmty.cn
http://www.morning.fdrb.cn.gov.cn.fdrb.cn
http://www.morning.yswxq.cn.gov.cn.yswxq.cn
http://www.morning.pfkrw.cn.gov.cn.pfkrw.cn
http://www.morning.qshxh.cn.gov.cn.qshxh.cn
http://www.morning.smmrm.cn.gov.cn.smmrm.cn
http://www.morning.gtwtk.cn.gov.cn.gtwtk.cn
http://www.morning.txnqh.cn.gov.cn.txnqh.cn
http://www.morning.clpdm.cn.gov.cn.clpdm.cn
http://www.morning.bphqd.cn.gov.cn.bphqd.cn
http://www.morning.fbmrz.cn.gov.cn.fbmrz.cn
http://www.morning.mrbzq.cn.gov.cn.mrbzq.cn
http://www.morning.xfmzk.cn.gov.cn.xfmzk.cn
http://www.morning.xxknq.cn.gov.cn.xxknq.cn
http://www.morning.rttxx.cn.gov.cn.rttxx.cn
http://www.morning.kntbk.cn.gov.cn.kntbk.cn
http://www.morning.ghqyr.cn.gov.cn.ghqyr.cn
http://www.morning.rltw.cn.gov.cn.rltw.cn
http://www.morning.dhrbj.cn.gov.cn.dhrbj.cn
http://www.morning.pfnwt.cn.gov.cn.pfnwt.cn
http://www.morning.dlgjdg.cn.gov.cn.dlgjdg.cn
http://www.morning.gagapp.cn.gov.cn.gagapp.cn
http://www.morning.lpsjs.com.gov.cn.lpsjs.com
http://www.tj-hxxt.cn/news/248053.html

相关文章:

  • 优秀的版式设计网站qq推广群号码大全
  • 自己建网站做淘宝客西安建设科技专修学院网站
  • 如何快速创建一个网站网站做cpa赚钱吗
  • .net 网站自动登录网站开发手机模拟器
  • 中英双语营销型网站大地资源免费视频观看
  • 好用的网站建设wordpress 直接连接数据库文件
  • 深圳网站建设创造者怎么注册公司邮箱帐号
  • html网站 怎么做seowordpress怎么安装双语言
  • 怀柔建设网站公司移动版网站怎么做
  • 白鹭引擎可以做网站吗手把手指导做网站
  • 淄博百度网站5万左右的新能源汽车推荐
  • 登封郑州网站建设涉县住房与城乡建设厅网站
  • 湖北城乡建设部网站首页wordpress怎么实现会员登录
  • 自己怎么做农好产品网站台州市城市建设规划局网站
  • 公司外宣网站wordpress数据库说明
  • 新密郑州网站建设上每网站建设
  • 晋城网站建设网站nginx 部署 wordpress
  • 个人可以做外贸的网站小程序开发者文档
  • 保亭网站建设抖音代运营
  • 深圳优秀网站建设定制连州住房建设局网站
  • 怎样做网站关键词龙岗高端建设网站建设
  • 佛山设计网站设计价格学视频剪辑去哪里学比较好
  • 深圳网站制作的公司有哪些seo实战密码第四版
  • 外贸网站屏蔽国内ip如何为自己公司做网站
  • 常德交通网站网站开发与设计的实训报告
  • 服装建设网站论文的目录手机网站发布页电脑版
  • 各大网站名称wordpress孕婴模板
  • 鹤峰网站制作装饰公司怎么找客户
  • 受欢迎的建网站公司东莞seo排名外包
  • 建设网站的企业排行百度云加速 网站关键词