2024-10-16 20:18:12发布:C语言基础知识:指针和数组的区别是什么?
发布日期:2024-10-16 20:18:12 阅读:329098 当前热度:937
来源类型:冒险雷探长 | 作者:夏琳·蒂尔顿 本站原创 转载请注明
【新澳门六开彩历史记录查询表】 【新澳门今晚开什么特肖】 【今天新澳门开奖结果】 | 【香港最快开码开奖结果】 【澳门精准资料大全免费】 【澳门香港天天开码开奖号码】 【2024澳门天天开好彩大全香港】 【最准一码一肖100%精准,管家婆】 【二四六好彩308免费资料论坛大全】 【刘伯温四肖八码期期准精选风险】 【白小姐精选四肖八码】 【2021年澳门精准资料】 【管家婆今期免费资料大全第6期】
在C语言教程中我们使用通过数组名通过偏移和指针偏移都可以遍历数组,那么指针和数组到底有什么区别??
由于数组中的数据在内存中都是连续存放的,数组名默认就是数组的首地址,也是一个特殊的指针;
二.指针和数组区别
1.通过 sizeof 获取大小
不管是数组还是指针变量,计算大小的时候都可以通过sizeof函数,注意两者使用的区别:
a.计算数组大小
数组所占存储空间的内存:sizeof(数组名);
数组的大小:sizeof(数组名)/sizeof(数据类型)
b.计算指针大小
在 32 位平台下,无论指针的类型是什么,sizeof(指针名)都是 4 ,在 64 位平台下,无论指针的类型是什么,sizeof(指针名)都是 8 ;
由此可见,sizeof函数计算指针大小的时候,与数据变量类型无关,x86平台下指针大小始终为4,x64平台下指针大小始终为8;
2.指针和数组赋值方式不同
a.指针赋值
指针很灵活,它可以指向任意类型的数据。指针的类型说明了它所指向地址空间的内存。
b.数组赋值
数组在内存中是连续存放的,开辟出一块连续的内存空间。数组可以根据数组的大小进行访问,多维数组实际上由多个一维数组构成,数组的赋值这里不再重复讲解。
3.指针是指针变量,数组是指针常量
常量:常量的值始终是固定的,不能被修改;
变量:变量的值可以任意修改;
那么指针和数组区别在哪呢?
写法一是正确的,常规操作;
写法二是错误的,数组名默认指向数组的首地址,是不能被修改的;
总结:所以说数组是指针常量,不能被修改;指针是变量可以被随意修改;
为了帮助大家,轻松,高效学习C语言/C++,给大家分享我收集的资源,从最零基础开始的,帮助大家在学习C语言的道路上披荆斩棘!
编程学习书籍分享:
编程学习视频分享:
整理分享(多年学习的源码、项目实战视频、项目笔记,基础入门教程)
欢迎转行和学习编程的伙伴,利用更多的资料学习成长比自己琢磨更快哦!大家也要把握住大学的时光,抓住成长的每一次机会哦~
对于C/C++感兴趣可以关注小编在后台私信我:【编程交流】一起来学习哦!可以领取一些C/C++的项目学习视频资料哦!已经设置好了关键词自动回复,自动领取就好了!
【2024澳门资料大全】 【新澳门特马开码开奖结果】 【新澳门资料大全正版资料2024】 | 【香港最准内部免费资料苹果手机版】 【澳门生肖今期开奖结果是什么】 【澳门王中王四肖中特】 【2024年香港6合和彩开奖结果】 【今晚上澳门特马必中一肖】 【新澳最新最快资料】 【新澳门精准免费大全】 【7777788888澳门王中王2024年】 【2024澳门一肖一码100准】 【澳门挂牌正版挂牌完整挂牌大全】
Bustamante:
5秒前:指针赋值指针很灵活,它可以指向任意类型的数据。
IP:10.36.51.*
玛丽·爱丽丝:
7秒前:3.
IP:55.33.77.*
Berkley:
3秒前:指针的类型说明了它所指向地址空间的内存。
IP:59.60.11.*
林伟贤:
8秒前:在C语言教程中我们使用通过数组名通过偏移和指针偏移都可以遍历数组,那么指针和数组到底有什么区别?
IP:32.57.99.*
约翰·迈克尔·辛吉斯:
2秒前:编程学习书籍分享:编程学习视频分享:整理分享(多年学习的源码、项目实战视频、项目笔记,基础入门教程)欢迎转行和学习编程的伙伴,利用更多的资料学习成长比自己琢磨更快哦!
IP:16.46.73.*
Tsunashima:
2秒前:指针和数组赋值方式不同a.
IP:10.54.92.*
Annett:
4秒前:由于数组中的数据在内存中都是连续存放的,数组名默认就是数组的首地址,也是一个特殊的指针;二.
IP:29.12.94.*