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

网新企业网站管理系统厦门好景科技做网站

网新企业网站管理系统,厦门好景科技做网站,深圳logo设计公司排名,ppt模板免费版指针是什么#xff1f; 指针是什么#xff1f; 指针理解的2个要点#xff1a; 指针是内存中一个最小单元的编号#xff0c;也就是地址 平时口语中说的指针#xff0c;通常指的是指针变量#xff0c;是用来存放内存地址的变量 总结#xff1a;指针就是地址#xff0c;口… 指针是什么 指针是什么 指针理解的2个要点 指针是内存中一个最小单元的编号也就是地址 平时口语中说的指针通常指的是指针变量是用来存放内存地址的变量 总结指针就是地址口语中说的指针通常指的是指针变量。 那我们就可以这样理解 内存 指针变量 我们可以通过取地址操作符取出变量的内存其实地址把地址可以存放到一个变量中这个 变量就是指针变量 #include stdio.h int main() {int a 10;//在内存中开辟一块空间int *p a;//这里我们对变量a取出它的地址可以使用操作符。//a变量占用4个字节的空间这里是将a的4个字节的第一个字节的地址存放在p变量 中p就是一个之指针变量。return 0; }总结 指针变量用来存放地址的变量。存放在指针中的值都被当成地址处理。 那这里的问题是 一个小的单元到底是多大 1个字节 如何编址 经过仔细的计算和权衡我们发现一个字节给一个对应的地址是比较合适的。 对于32位的机器假设有32根地址线那么假设每根地址线在寻址的时候产生高电平高电压和低电 平低电压就是1或者0 那么32根地址线产生的地址就会是 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000001 … 11111111 11111111 11111111 11111111 这里就有2的32次方个地址。 每个地址标识一个字节那我们就可以给 2^32Byte 2^32/1024KB 232/1024/1024MB232/1024/1024/1024GB 4GB 4G的空闲进行编址。 同样的方法那64位机器如果给64根地址线那能编址多大空间自己计算。 这里我们就明白 在32位的机器上地址是32个0或者1组成二进制序列那地址就得用4个字节的空间来存储所以 一个指针变量的大小就应该是4个字节。那如果在64位机器上如果有64个地址线那一个指针变量的大小是8个字节才能存放一个地 址。 总结 指针是用来存放地址的地址是唯一标示一块地址空间的。 指针的大小在32位平台是4个字节在64位平台是8个字节。 指针和指针类型 指针也是有类型的 X86 32位环境 X64 64位环境 int main() {char* pc NULL;short* ps NULL;int* pi NULL;double* pd NULL;//sizeof返回的值是无符号整型 unsigned int 用%zu来打印printf(%zu\n, sizeof(pc));printf(%zu\n, sizeof(ps));printf(%zu\n, sizeof(pi));printf(%zu\n, sizeof(pd));return 0; }现在用64位环境运行上面的代码 现在用86位环境运行上面的代码 既然指针大小都是固定的为什么还要区分指针类型呢 指针类型 我们来看下面的代码 int main() {int a 0x11223344;//0x开头的是16进制数字两个十六进制数字代表一个字节//0001 0001 0010 0010 0011 0011 0100 0100return 0; }我们看调试窗口 可以看见确实是占用了四个字节 int main() {int a 0x11223344;//0x开头的是16进制数字两个十六进制数字代表一个字节//0001 0001 0010 0010 0011 0011 0100 0100int* pa a;*pa 0;return 0; }我们再往下一步可以看到四个字节一下子都被修改了 那如果我们改为char*呢 我们只改动了一个字节 因为我们所使用的是char*类型的指针所以一次只能修改一个字节 指针类型的差异并没有决定所占大小但是决定了被解引用所访问的字节 指针±整数 int main() {int n 10;char* pc (char*)n;int* pi n;printf(%p\n, n);printf(%p\n, pc);printf(%p\n, pc 1);printf(%p\n, pi);printf(%p\n, pi 1);return 0; }我们可以看到两个地址放的是同一个值 但是int*往前走了4个字节 char*只走了1个字节 **结论**指针的类型决定了指针1操作时跳过几个字节 可以通俗的理解为决定了指针的步 int和float都是解引用访问四个字节那么int*和float*可以通用吗 int main() {int a 0;int* pi a;float* pf a;*pi 100;return 0; }可以看到已经成功存入 那如果是这样呢 int main() {int a 0;int* pi a;float* pf a;*pf 100.0;return 0; }那这样子就不一样了float*认为内存中放的就是浮点数所以放进内存的时候默认为浮点数形式 那么照这么看int*和float*就是不能混用的
http://www.pierceye.com/news/509766/

相关文章:

  • 手机网站开发语言深圳网站建设培训
  • wordpress做的视听网站怎么用ftp清空网站
  • 网站建设能干什么网页设计代码模板人物介绍
  • 桂阳网站设计做p2p投资理财的网站
  • 做学术论文的网站从化专业做网站
  • 从化网站制作狮山公司网站建设
  • 网站开发验证码图片不显示php 自动做网站点击量
  • 大连网站开发费多少钱合肥企业网站建设工作室
  • 小企业网站建设的基础知识wap网站 开发
  • 地方门户网站赚钱吗沈阳黑酷做网站建设优化公司怎么样
  • 佛山市seo网站设计工具内部网站建设软件下载
  • 深圳网站建设高端设计网站建设 补充协议
  • 枣阳网站建设 枣阳山水数码自己建网站备案
  • 网站网站制作多少钱共享看世界新域名
  • 网站空间 阿里云wordpress多站点403
  • 下载网站备案的核验单免费ppt模板下载红色
  • discuz 网站备案信息代码温州网站建设优化公司
  • 外国人做汉字网站微网站开发手机模拟器
  • dede做网站网站群 优点
  • 网站制作多久能完成客户管理软件公司
  • 做网站最好的引流推广方法软件
  • 烟台网站建设4038gzs成都建设网上商城平台公司
  • 网站建设费在会计上怎么入账做学校网站的目的
  • 常德网站建设设计下载百度安装
  • 站长平台有哪些广东东远建设工程管理有限公司网站
  • 做蓝牙app的网站跨境电商是不是坑
  • 电子商务网站开发 刘兰娟企业网站建设发展平台
  • 天津做网站得公司游戏界面设计网站
  • 手机网站制作推广网站开发制作培训学校
  • 网站建设需要哪些成本自媒体怎么赚钱