数组指针与二维数组的关系(C语言指针数组与二维数组行指针小问题)

2024-06-28 16:49:31 51

数组指针与二维数组的关系(C语言指针数组与二维数组行指针小问题)

本文目录

C语言指针数组与二维数组行指针小问题

指针数组:该数组中存放的全部都是指针,例如:原例子中的char*name,这个是一个标准透了的一维数组,就像是数组inta;a=2;a=3;不同的是数组name存放的是指针,数组a存放的是数字name=name表示的是把name的指针赋值给name就不难理解了。二维数组的行名:LZ假设的数组charname是一个二维数组,行名name表示的是一个指向字符串的指针没问题吧,这个指针中存放的是一个字符串,或者说是一个字符数组,如果说上例子要改为二维数组的形式,那么需要进行strcpy的字符串拷贝。总结:总的来说:指针数组中的name表示的是一个变量,这个变量中存放的是指针,二维数组的name表示的是一个指针,指向字符串的指针。如果LZ还不明白变量和指针的区别,我也没办法解释了。

谁能把你们开始理解指针和2维数组关系的方法教我啊!我头晕了哦

其实 不难理解指针也是变量像你用 int a; char b;分别整型 和 字符 型的变量 定义了 这些 变量, 在程序 运行的 时候,他们会被分配内存空间,当然也就有了首地址吧!可能你要问了,什么是首地址呢比如,在Tc里边 int 占两个字节,低字节的地址(也就是内存的编号)就是这个int型变量 的 首地址。指针变量也是变量,但它的内容 存放的是 变量的地址。至于二维数组,首先要说数组名,数组名是数组的首地址,二维数组的数组名 是个 行指针,指向的是 第0行的地址,如果想 用指针访问 某个二维数组的元素,就得先把它转成 元素指针,在通过*运算符,读出它的值。一定要记住a与*(a+i)是无条件等价的!比如int a;//你随便初始化a是二维数组的首地址,a指向第0行你可以通过以下几种方式得到a的值,估计看完后,你就懂了。a//直接引用刚才说过,a是行指针,不能直接通过它,得到数组元素,方法如下:*(*(a+2)+2)//解释:从内到外,a+2指向第二行,*(a+2)是元素指针,指向第二行第0个元素, 等价于a*(a+2)+2指向 第二行第2个元素 等价于a+2*(*(a+2)+2)取 第二行第2个元素 的值 等价于a是不是通过指针 也一样 得到了一样的结果。指针是C语言的灵魂所在,一定要弄明白!有问题 QQ:270495267

C语言:简述一下“数组和指针的关系”

一、概念

  • 数组:数组是用于储存多个相同类型数据的集合。

  • 指针:指针相当于一个变量,但是它和不同变量不一样,它存放的是其它变量在内存中的地址。

  • 二、赋值、存储方式、求sizeof、初始化等

    1.赋值

    同类型指针变量可以相互赋值,数组不行,只能一个一个元素的赋值或拷贝

    2.存储方式

  • 数组:数组在内存中是连续存放的,开辟一块连续的内存空间。数组是根据数组的下进行访问的,多维数组在内存中是按照一维数组存储的,只是在逻辑上是多维的。

  • 数组的存储空间,不是在静态区就是在栈上。

  • 指针:指针很灵活,它可以指向任意类型的数据。指针的类型说明了它所指向地址空间的内存。

  • 指针:由于指针本身就是一个变量,再加上它所存放的也是变量,所以指针的存储空间不能确定。

    3.求sizeof

  • 数组:

  • 数组所占存储空间的内存:sizeof(数组名)数组的大小:sizeof(数组名)/sizeof(数据类型)

  • 指针:

  • 在32位平台下,无论指针的类型是什么,sizeof(指针名)都是4,在64位平台下,无论指针的类型是什么,sizeof(指针名)都是8。

    关于指针和数组求sizeof,我在之前的博客中写过,现将连接贴上:

    2.函数指针数组

    形式:例如int (*p)( );因为p先和结合,说明p是数组,数组的内容是一个int (*)( )类型的指针函数指针数组在转换表中应用广泛

    3.函数指针数组的指针

    指向函数指针数组的一个指针,也就是说,指针指向一个数组,数组的元素都是函数指针

  • void test(const char* str)
  • {printf(“%s\n“, str);
  • }int main()
  • {//函数指针pfunvoid (*pfun)(const char*) = test;//函数指针的数组pfunArrvoid (*pfunArr)(const char* str);
  • pfunArr = test;//指向函数指针数组pfunArr的指针ppfunArrvoid (*(*ppfunArr))(const char*) = &pfunArr;return 0;
  • }

关于二维数组和指针

char *p=str应该改成char *p=*str;二维数组的数组名就是一个地址,而且是一个二级指针,*str这样就变成一级指针了,就可以赋给同类型的p了;由于p是一个指向字符类型的指针,所以p+10就相当于p+10*sizeof(char)要不改成这样:char (*p)=str;这样p的类型为int (*);即指向由10个字符组成的一维组;p+10就指向第10维了

C语言中关于二维数组与指针的关系

修改后代码如下。。。我测试过了。。。。希望对你有帮助。。。。。#include《stdio.h》# include《stdio.h》void main(){ int a,i,j,k=0,m,n; int (*p)=a; printf(“enter n(n《10)“); scanf(“%d“,&n); if(n%2==0) m=n/2; else m=n/2+1; for(i=0;i《m;i++) { for(j=i;j《n-i;j++) *(*(p+i)+j)=++k; for(j=i+1;j《n-i;j++) *(*(p+j)+(n-i-1))=++k; for(j=n-i-2;j》=i;j--) *(*(p+n-i-1)+j)=++k; for(j=n-i-2;j》=i+1;j--) *(*(p+j)+i)=++k; } for(i=0;i《n;i++) { for(j=0;j《n;j++) printf(“%5d“,*(*(p+i)+j)); printf(“\n“); }}

数组指针的指向一维数组和二维数组的区别

一、指向一维数组的指针变量设一维数组为a+j=*(a+i)+j,由于*(a+i)+j是二维数组a的i行j列元素的首地址。该元素的值等于*(*(a+i)+j)。

二维指针和二维数组的区别

指针的指针和二维数组完全俩东西,二维数组是 一维数组的一维数组,元素是数组,所以可以隐式转化为int (*),跟int **两回事,扩展到更多维或其它类型也是成立的,只能隐式转化为第一维的元素的指针 补充说明下隐式转化为指针

数组指针与二维数组的关系(C语言指针数组与二维数组行指针小问题)

本文编辑:admin

更多文章:


美图秀秀网页版入口(美图秀秀网页版怎么保存图片)

美图秀秀网页版入口(美图秀秀网页版怎么保存图片)

本篇文章给大家谈谈美图秀秀网页版入口,以及美图秀秀网页版怎么保存图片对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录美图秀秀网页版怎么保存图

2024年8月25日 00:35

哪几款CRM系统免费又好使用的呢?有哪些免费的轻量级在线CRM系统

哪几款CRM系统免费又好使用的呢?有哪些免费的轻量级在线CRM系统

本文目录哪几款CRM系统免费又好使用的呢有哪些免费的轻量级在线CRM系统有哪些简单、免费、适合中小型企业的CRM软件crm客户关系管理软件如何选有免费的crm吗谁知道哪里永久免费的CRM软件啊求推荐个企业使用免费CRM系统,会有什么不好的影

2024年5月6日 04:29

疾风剑豪bug(LOL中,看到有网友录制亚索新BUG无CD连Q,我对线时却哭了,具体怎么操作)

疾风剑豪bug(LOL中,看到有网友录制亚索新BUG无CD连Q,我对线时却哭了,具体怎么操作)

本文目录LOL中,看到有网友录制亚索新BUG无CD连Q,我对线时却哭了,具体怎么操作LOL外服玩家发现亚索新Bug,EQ二连无CD,极限落地双风不是梦,怎么做到的LOL亚索再出“超级BUG”,跨泉水接R,Q无CD蓄风,怎么用出来的LOL玩家

2024年7月23日 23:21

变态破解版游戏盒子(破解游戏盒子排行榜第一)

变态破解版游戏盒子(破解游戏盒子排行榜第一)

这篇文章给大家聊聊关于变态破解版游戏盒子,以及破解游戏盒子排行榜第一对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录破解游戏盒子排行榜第一十大破解游戏盒排名是怎样的破解游戏盒子哪个好求变态手游盒子排名,有哪些比较推荐的单机手游

2024年8月15日 12:25

买车看什么网站比较好?网约车营运证可以换车吗

买车看什么网站比较好?网约车营运证可以换车吗

本文目录买车看什么网站比较好网约车营运证可以换车吗换车网是干嘛的上海丁丁交通乘换车网开心换车网和开新二手车帮卖是一家公司么换车网是个做什么的啊只能旧车换新车吗要换车了,旧车怎么处理比较好换车网的前景怎么样买车看什么网站比较好买车的网站有很多

2024年7月23日 16:38

怎么改自己的IP地址?怎么更改IP地址

怎么改自己的IP地址?怎么更改IP地址

本文目录怎么改自己的IP地址怎么更改IP地址如何更改电脑的IP地址台式电脑怎么更改ip地址怎么改ip怎么改ip地址怎么改变自己的ip地址怎样更改ip地址怎么改电脑ip怎么改自己的ip地址怎么改自己的IP地址首先我们在桌面上找到网上邻居(XP

2024年6月10日 18:18

魔兽rpg地图包全集下载(魔兽争霸3冰封王座地图怎么下载)

魔兽rpg地图包全集下载(魔兽争霸3冰封王座地图怎么下载)

今天给各位分享魔兽争霸3冰封王座地图怎么下载的知识,其中也会对魔兽争霸3冰封王座地图怎么下载进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录魔兽争霸3冰封王座地图怎么下载跪求魔兽rpg地图包下载魔兽争霸RPG地

2024年7月18日 01:47

solidworks2012安装方法(如何安装solidworks201264位)

solidworks2012安装方法(如何安装solidworks201264位)

本文目录如何安装solidworks201264位solidworks12版怎么安装怎么安装solidworks2012如何安装solidworks201264位1:64位的solidworks2012只能安装在64位的操作系统上。32位s

2024年5月5日 15:35

2021最新一二三四乱码(2021乱码自动跳转)

2021最新一二三四乱码(2021乱码自动跳转)

本文目录2021乱码自动跳转一二三四五线城市名单2021年是什么芒果乱码一二三四区别2021乱码自动跳转重新设置编码的方式。出现乱码根本原因就是编码不一致的问题,所以解决方式就是设置编码的方式,先点击编码转换器,点击GBK,点击conver

2023年9月28日 14:00

如何点亮烽火战国(如何快速点亮烽火战国)

如何点亮烽火战国(如何快速点亮烽火战国)

本文目录如何快速点亮烽火战国如何才能点亮烽火战国如何点亮烽火战国呢烽火战国怎样点亮啊烽火战国怎么点亮怎样点亮烽火战国烽火战国在那玩,如何点亮如何快速点亮烽火战国你可以先造建筑科技,完成新手任务,还有多造点兵攻打据点和羊城,歼灭1000防御就

2024年6月21日 19:37

台式电脑没有无线网卡怎么连wifi(台式电脑没有无线网卡能用无线网吗)

台式电脑没有无线网卡怎么连wifi(台式电脑没有无线网卡能用无线网吗)

各位老铁们好,相信很多人对台式电脑没有无线网卡怎么连wifi都不是特别的了解,因此呢,今天就来为大家分享下关于台式电脑没有无线网卡怎么连wifi以及台式电脑没有无线网卡能用无线网吗的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来

2024年7月2日 10:40

我家公主最可爱(日语的中文发音:我家公主最可爱)

我家公主最可爱(日语的中文发音:我家公主最可爱)

本文目录日语的中文发音:我家公主最可爱我家公主最可爱怎么刷三色姬 三色姬副本攻略详解美丽姬如何获得;我家公主最可爱我家公主最可爱中什么星座的公主最多我家公主最可爱怎么玩 首抽什么好日语的中文发音:我家公主最可爱ウチ の 姫さ

2024年7月24日 08:36

autodesksmoke(视频剪切,特效,合并,转换,哪个软件好用、易学)

autodesksmoke(视频剪切,特效,合并,转换,哪个软件好用、易学)

本文目录视频剪切,特效,合并,转换,哪个软件好用、易学autodesk smoke和flame怎么比视频剪切,特效,合并,转换,哪个软件好用、易学要说剪辑合成当然是PR最牛了,但是特效合成就必须是AE,一个逗比公司开发的这两款软件是影视制作

2024年7月2日 23:57

firmly(firmly是什么意思)

firmly(firmly是什么意思)

各位老铁们,大家好,今天由我来为大家分享firmly,以及firmly是什么意思的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目录firmly是什么意

2024年9月4日 22:05

汉朝人能吃到火锅吗蚂蚁庄园(中国古代有没有火锅呢)

汉朝人能吃到火锅吗蚂蚁庄园(中国古代有没有火锅呢)

本文目录中国古代有没有火锅呢汉朝人能吃火锅吗汉朝人能吃火锅吗蚂蚁庄园汉朝人能吃到火锅吗唐朝人能吃到火锅吗汉朝人能吃到火锅吗揭秘中国火锅的发展历史中国古代有没有火锅呢火锅,顾名思义,是以锅为盛具,以火为热源,把各种肉类、蔬菜、瓜果等食材放入锅

2024年5月1日 21:39

起点中文网手机版(起点中文网手机版为什么显示有这么多评论但是点进去却只有那两条如何看到全部的评论)

起点中文网手机版(起点中文网手机版为什么显示有这么多评论但是点进去却只有那两条如何看到全部的评论)

本文目录起点中文网手机版为什么显示有这么多评论但是点进去却只有那两条如何看到全部的评论起点中文网能用手机发表小说吗怎么发表手机起点网和起点中文网有什么区别起点中文网手机版为什么显示有这么多评论但是点进去却只有那两条如何看到全部的评论显示57

2024年7月2日 12:01

华泰证券手机交易软件下载(怎么下载手机版华泰证券)

华泰证券手机交易软件下载(怎么下载手机版华泰证券)

本篇文章给大家谈谈华泰证券手机交易软件下载,以及怎么下载手机版华泰证券对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录怎么下载手机版华泰证券

2024年7月13日 08:56

音频剪辑软件?有什么免费的视频制作软件

音频剪辑软件?有什么免费的视频制作软件

本篇文章给大家谈谈蜜蜂剪辑,以及音频剪辑软件对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录音频剪辑软件有什么免费的视频制作软件如何在蜜蜂剪

2024年8月19日 11:40

粉末游戏鸟玩家有什么用?App Store里面有什么好玩的体育类手机游戏

粉末游戏鸟玩家有什么用?App Store里面有什么好玩的体育类手机游戏

本文目录粉末游戏鸟玩家有什么用App Store里面有什么好玩的体育类手机游戏请问结界师游戏鸟森林第6关那个BOSS怎么打啊孤独的鸟儿游戏鸟儿会回来吗粉末游戏鸟玩家有什么用1.拖动可以把一部分的粉末移动位置,还可以把战士拉的很长。。。。。

2024年5月10日 01:22

如何恢复硬盘数据恢复(不小心删除了磁盘分区了怎么恢复数据)

如何恢复硬盘数据恢复(不小心删除了磁盘分区了怎么恢复数据)

大家好,关于如何恢复硬盘数据恢复很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于不小心删除了磁盘分区了怎么恢复数据的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助

2024年8月7日 08:25

近期文章

本站热文

iphone vpn设置(ios设置vpn快捷开关)
2024-07-22 15:01:12 浏览:2334
windows12正式版下载(操作系统Windows Server 2012 R2,在哪能下载到,公司用的)
2024-07-20 17:26:53 浏览:1730
java安装教程(win10如何安装JAVA)
2024-07-19 19:55:49 浏览:1154
client mfc application未响应(每次进cf就提示client MFC Application未响应该怎么办啊!急急急)
2024-07-20 11:15:58 浏览:1151
标签列表

热门搜索