| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1322 人关注过本帖
标题:字符指针数组 取元素问题
只看楼主 加入收藏
xycode
Rank: 1
等 级:新手上路
帖 子:6
专家分:1
注 册:2011-4-27
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:9 
字符指针数组 取元素问题
程序代码:
int main()
{
    char *name[6]={"one","two","three","four","five","six"};
    std::cout<<std::endl<<*name;    
}


直接cout *name  可以得到第一个单词,但是如果要取第一个单词的 n 字母,要怎么做呢?我试过用二维数组,每行一个单词,但觉得这样很浪费。
一维数组要怎么做呢。
搜索更多相关主题的帖子: 元素 
2011-04-27 10:21
Lyone
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:99
专家分:195
注 册:2010-12-7
收藏
得分:10 
int a=1;//第一个单词
int n=2;//第2个字母
cout<<*(name[a-1]+n-1);
2011-04-27 11:15
mm1010220cs
Rank: 2
等 级:论坛游民
帖 子:36
专家分:98
注 册:2011-4-7
收藏
得分:10 
你定义的是指针字符数组,这样做: 
int main()
{
    char *name[6]={"one","two","three","four","five","six"};
    std::cout<<std::endl<<*(*name+1);     
}
输出n
2011-04-27 12:46
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
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
虽然你是一维数组,但也可以用 name[0][1] 来取第一个单词的第二个字母。

楼上两位的意见,就是变相地在用我这个代码。
2011-04-27 13:59
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
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
回复 6楼 xycode
怎么会!?
程序代码:
#include <iostream>
using namespace std;

int main(int argc, char *argv[])
{
    char *name[] = { "one", "two", "three" };

    cout << name[0][1] << endl;

    return 0;
}
跑完的結果是 n。
2011-04-27 19:12
mm1010220cs
Rank: 2
等 级:论坛游民
帖 子:36
专家分:98
注 册:2011-4-7
收藏
得分:0 
    for(i=0;i<6;i++)
        cout<<endl<<*(*(name+i)+1);   
这样你想取哪个元素的哪个字母就都可以了   
2011-04-27 20:14
xycode
Rank: 1
等 级:新手上路
帖 子:6
专家分:1
注 册:2011-4-27
收藏
得分:0 
回复 7楼 pangding
突然又可以了,晕死,下午我确认过3次代码,晚上试试又可以了的?
2011-04-28 01:50
cnsongzi
Rank: 1
来 自:安徽合肥
等 级:新手上路
帖 子:27
专家分:6
注 册:2010-10-2
收藏
得分:0 
这个正是想要的
2011-04-28 14:29
快速回复:字符指针数组 取元素问题
数据加载中...
 
   



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

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