| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 374 人关注过本帖
标题:[讨论]问问题
取消只看楼主 加入收藏
W649897
Rank: 1
等 级:新手上路
帖 子:50
专家分:0
注 册:2006-11-26
收藏
 问题点数:0 回复次数:1 
[讨论]问问题

问问题//用指向指针的指针的方法对5个字符串排序输出
//created on december 25 2006
#include<iostream>
using namespace std;
void sort(char**p);
int main()
{
const int m=20;
int i;
char**p,*pstr[5],str[5][m];
for(i=0;i<5;i++)
pstr[i]=str[i];//在这里换成pstr[i]=str+i为什么不行,而换成pstr[i]=*(str+i)就行了呢;*(str+i)不就是取内容吗,但pst是指针呀想不明白
cout<<"enter five string:";
for(i=0;i<5;i++)
cin>>str[i];
p=pstr;
sort(p);
for(i=0;i<5;i++)
cout<<pstr[i]<<endl;
return 0;
}
void sort(char**p)
{
for(int i=0;i<4;i++)
for(int j=i+1;j<5;j++)
{
char*temp;
if(strcmp(*(p+i),*(p+j))>0)//还有在这里他们的比较是怎么进行的呀,p的解引用不是pstr的地址吗,,如果是这样还怎么比较呀!各位高手多多指教了
{
temp=*(p+i);
*(p+i)=*(p+j);
*(p+j)=temp;
}
}
}


2006-12-25 20:26
W649897
Rank: 1
等 级:新手上路
帖 子:50
专家分:0
注 册:2006-11-26
收藏
得分:0 

strcmp明白了,谢谢了

2006-12-25 21:09
快速回复:[讨论]问问题
数据加载中...
 
   



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

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