社区
C++ 语言
帖子详情
求解“二维指针数组” 高手来
XiaoBai2222
2010-05-23 10:16:33
(1)char a[4][20]={"Be","Sh","Ti","Gu"};
(2)char a[4][20]={{'B','e'},{'S','h'},{'T','i'},{'G','u'}};
假如说(1)(2)语句是等价的。那么请问下面的(3)语句怎样用上面的方法描述:
(3)char *a[]={"Be","Sh","Ti","Gu"};
(4)
多谢,请指教!!!!!!!!!!!!!!!!!!!!!!!!!!!
...全文
122
13
打赏
收藏
求解“二维指针数组” 高手来
(1)char a[4][20]={"Be","Sh","Ti","Gu"}; (2)char a[4][20]={{'B','e'},{'S','h'},{'T','i'},{'G','u'}}; 假如说(1)(2)语句是等价的。那么请问下面的(3)语句怎样用上面的方法描述: (3)char *a[]={"Be","Sh","Ti","Gu"}; (4) 多谢,请指教!!!!!!!!!!!!!!!!!!!!!!!!!!!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ArtiFly2000
2010-05-24
打赏
举报
回复
1、2是二维数组
3是指针数组,和1、2是不一样的,分别打印下1、2、3形式的sizeof(a)就能看出来
3无法按2的形式来表示,因为2是二维数组的初始化形式
[Quote=引用楼主 xiaobai2222 的回复:]
(1)char a[4][20]={"Be","Sh","Ti","Gu"};
(2)char a[4][20]={{'B','e'},{'S','h'},{'T','i'},{'G','u'}};
假如说(1)(2)语句是等价的。那么请问下面的(3)语句怎样用上面的方法描述:
(3)char *a[]={"Be","Sh","Ti","Gu"};
(4)
多谢,请指教!!!!!!!……
[/Quote]
houailu
2010-05-23
打赏
举报
回复
上面写的很明确,注意指针指向的是地址
白云飘飘飘
2010-05-23
打赏
举报
回复
char *a1[]={a[0],a[1],a[2],a[3]};
白云飘飘飘
2010-05-23
打赏
举报
回复
1和2是一样的,都是二维数组。
3是一维数组,数组的元素是指向char的指针。初始化时必须使用指针。而字符串常量的类型就是指针。所以是不能用字符来初始化的。不过有一种绕弯的方式:
char a[4][20]={{'B','e','\0'},{'S','h','\0'},{'T','i','\0'},{'G','u','\0'}};
char *a[]={a[0],a[1],a[2],a[3]};
equalsai
2010-05-23
打赏
举报
回复
(1)char a[4][20]={"Be","Sh","Ti","Gu"};
(2)char a[4][20]={{'B','e','\0'},{'S','h','\0'},{'T','i','\0'},{'G','u','\0'}};
(3)char *a[]={"Be","Sh","Ti","Gu"};
其实对于(3)a[0],a[1],a[2],a[3]每一个都是一个char*型的。
与(1),(2)相比较,(1),(2)中a[0],a[1],a[2],a[3]的长度都是20,而(3)中a[0],a[1],a[2],a[3]的长度是不确定的,可以存变长的字符串。
没必要非得写成(1),(2)那种形式,如果要获得'B'的话a[0][0] = 'B'.
liutengfeigo
2010-05-23
打赏
举报
回复
要注意类型的匹配?
liutengfeigo
2010-05-23
打赏
举报
回复
char *a[] 这表示 指针数组。
而你后面的不是地址、
liutengfeigo
2010-05-23
打赏
举报
回复
char *a[]={{'B','e','\0'},{'S','h','\0'},{'T','i','\0'},{'G','u','\0'}};
这样不可以的。
XiaoBai2222
2010-05-23
打赏
举报
回复
(1)char a[4][20]={"Be","Sh","Ti","Gu"};
(2)char a[4][20]={{'B','e','\0'},{'S','h','\0'},{'T','i','\0'},{'G','u','\0'}};
(3)char *a[]={"Be","Sh","Ti","Gu"};
没错(1)(2)(3)是等价的,我想把(3)语句的"字符串"改写成字符型。当我写成(4)语句时,不能编译了。所以想知道正确的写法:
(4)char *a[]={{'B','e','\0'},{'S','h','\0'},{'T','i','\0'},{'G','u','\0'}};
heartlesstoanyone
2010-05-23
打赏
举报
回复
3楼说的很对
liangyonglou
2010-05-23
打赏
举报
回复
去除楼上说的原因,假设1 2等价的话,你写的3其实和1、2是一样的,即在这里*a[] 等价于 **a
个人认为
XiaoBai2222
2010-05-23
打赏
举报
回复
对不起修证一下:
(1)char a[4][20]={"Be","Sh","Ti","Gu"};
(2)char a[4][20]={{'B','e','\0'},{'S','h','\0'},{'T','i','\0'},{'G','u','\0'}};
假如说(1)(2)语句是等价的。那么请问下面的(3)语句怎样用上面的方法描述:
(3)char *a[]={"Be","Sh","Ti","Gu"};
(4)
heartlesstoanyone
2010-05-23
打赏
举报
回复
1和2根本不等价:
1)相当于char a[4][20]={{'B','e','\0'},{'S','h','\0'},{'T','i','\0'},{'G','u','\0'}};
c程序的设计实验八.pdf
c程序的设计实验八.pdf
c++程序设计实验八.pdf
c++程序设计实验八.pdf
C程序设计_第五讲:程序设计方法(三)复杂数据结构设计.ppt
C程序设计_第五讲:程序设计方法(三)复杂数据结构设计.ppt
200个经典C程序源码小游戏
经典的C资源,很全面详细 对于初学者来说,太重要了! 第一部分 基础篇 001 第一个C程序 002 运行多个源文件 003 求整数之积 004 比较实数大小 005 字符的输出 006 显示变量所占字节数 007 自增/自减运算 008 数列求和 009 乘法口诀表 010 猜数字游戏 011 模拟ATM(自动柜员机)界面 012 用一维数组统计学生成绩 013 用
二维
数组实现矩阵转置 014
求解
二维
数组的最大/最小元素 015 利用数组求前n个质数 016 编制万年历 017 对数组元素排序 018 任意进制数的转换 019 判断回文数 020 求数组前n元素之和 021
求解
钢材切割的最佳订单 022 通过指针比较整数大小 023 指向数组的指针 024 寻找指定元素的指针 025 寻找相同元素的指针 026 阿拉伯数字转换为罗马数字 027 字符替换 028 从键盘读入实数 029 字符行排版 030 字符排列 031 判断字符串是否回文 032 通讯录的输入输出 033 扑克牌的结构表示 034 用“结构”
经典C程序源代码文件(220个).zip
经典C程序源代码文件(220个) 001 第一个C程序 002 运行多个源文件 003 求整数之积 004 比较实数大小 005 字符的输出 006 显示变量所占字节数 007 自增/自减运算 008 数列求和 009 乘法口诀表 010 猜数字游戏 011 模拟ATM(自动柜员机)界面 012 用一维数组统计学生成绩 013 用
二维
数组实现矩阵转置 014
求解
二维
数组的最大/最小元素 015 利用数组求前n个质数 016 编制万年历 017 对数组元素排序 018 任意进制数的转换 019 判断回文数 020 求数组前n元素之和 021
求解
钢材切割的最佳订单 022 通过指针比较整数大小 023 指向数组的指针 024 寻找指定元素的指针 025 寻找相同元素的指针 026 阿拉伯数字转换为罗马数字 027 字符替换 028 从键盘读入实数 029 字符行排版 030 字符排列 031 判断字符串是否回文 032 通讯录的输入输出 033 扑克牌的结构表示 034 用“结构”统计学生成绩 035 报数游戏 036 模拟社会关系 037 统计文件的字符数 038 同时显示两个文件的
C++ 语言
65,187
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章