标题:字符指针数组 取元素问题
取消只看楼主
xycode
Rank: 1
等 级:新手上路
帖 子:6
专家分:1
注 册:2011-4-27
结帖率:100%
已结贴  问题点数:20 回复次数:3 
字符指针数组 取元素问题
程序代码:
int main()
{
    char *name[6]={"one","two","three","four","five","six"};
    std::cout<<std::endl<<*name;    
}


直接cout *name  可以得到第一个单词,但是如果要取第一个单词的 n 字母,要怎么做呢?我试过用二维数组,每行一个单词,但觉得这样很浪费。
一维数组要怎么做呢。
搜索更多相关主题的帖子: 元素 
2011-04-27 10:21
xycode
Rank: 1
等 级:新手上路
帖 子:6
专家分:1
注 册:2011-4-27
得分:0 
非常感谢两位...我是综合两位的答案解决的
a=1; //第几个元素
c=2; //第几个字母
std::cout<<*(*name[a-1]+c-1);


一楼的不用*name 的话,一样只会输出第二个元素,two 而不是第一个元素的第二个字母

二楼的不用 [a-1]+c-1 的话,也只是取到第二个元素,而不是第一个元素的第二个字母。

编译器 gcc 4.4.1

[ 本帖最后由 xycode 于 2011-4-27 13:36 编辑 ]
2011-04-27 13:34
xycode
Rank: 1
等 级:新手上路
帖 子:6
专家分:1
注 册:2011-4-27
得分:0 
以下是引用pangding在2011-4-27 13:59:50的发言:

虽然你是一维数组,但也可以用 name[0][1] 来取第一个单词的第二个字母。

楼上两位的意见,就是变相地在用我这个代码。


试了一下,如果是 *name[0][1] 这样会取到第二个元素 two 的首字母 t
2011-04-27 15:37
xycode
Rank: 1
等 级:新手上路
帖 子:6
专家分:1
注 册:2011-4-27
得分:0 
回复 7楼 pangding
突然又可以了,晕死,下午我确认过3次代码,晚上试试又可以了的?
2011-04-28 01:50



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-338073-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.116080 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved