读书人

为啥输不出来结果来,该如何处理

发布时间: 2012-02-04 15:43:09 作者: rapoo

为啥输不出来结果来
这个小程序就是去除连续相同字符 就是输不出结果来
#include <iostream.h>
char * delsame(char *str)
{
int k=0;char temp[10];
for(char *p=str;p!= '\0 ';p++)
{
if(k==0) temp[k++]=*p;
else if(temp[k-1]!=*p) temp[k++]=*p;
}
temp[k]= '\0 ';
for(int i=0;i <=k;i++)
str[i]=temp[i];
return str;
}
void main()
{
char a[10]= "abcddef ";
cout < <delsame(a);
}

[解决办法]
for(char *p=str;p!= '\0 ';p++)
==============================
这里死循环了。// for(char *p=str;*p!= '\0 ';p++)

还有temp怎么能固定大小呢,很容易就越界了。

读书人网 >C++

热点推荐