![]() |
#2
眼底星空2012-09-21 13:21
|

#include <iostream>
#include <string>
using namespace std;
int strlen(char *str)
{
int len;
len=strlen(str);
return len;
}
char reverse(char *str)
{
char s[100];
int len,i,j;
len=strlen(str);
for(i=0,j=len-i;i<len;i++,j--)
{
s[j]=str[i];
}
for(i=0;i<len;i++)
cout<<s[i]<<' ';
cout<<endl;
return 0;
}
int main()
{
char str[100];
while(cin.getline(str,100))
{
cout<<strlen(str)<<endl;
reverse(str);
}
return 0;
}
请问下,为何我编译没错误,运行后输入一行字符串就出错了,这是错误详细信息#include <string>
using namespace std;
int strlen(char *str)
{
int len;
len=strlen(str);
return len;
}
char reverse(char *str)
{
char s[100];
int len,i,j;
len=strlen(str);
for(i=0,j=len-i;i<len;i++,j--)
{
s[j]=str[i];
}
for(i=0;i<len;i++)
cout<<s[i]<<' ';
cout<<endl;
return 0;
}
int main()
{
char str[100];
while(cin.getline(str,100))
{
cout<<strlen(str)<<endl;
reverse(str);
}
return 0;
}
问题事件名称: APPCRASH
应用程序名: 字符串长度和逆置(编译错误).exe
应用程序版本: 0.0.0.0
应用程序时间戳: 505bf30b
故障模块名称: 字符串长度和逆置(编译错误).exe
故障模块版本: 0.0.0.0
故障模块时间戳: 505bf30b
异常代码: c00000fd
异常偏移: 000016e8
OS 版本: 6.1.7601.2.1.0.768.2
区域设置 ID: 2052
其他信息 1: 7b0b
其他信息 2: 7b0ba99c4236c0a224e68538902713d9
其他信息 3: 492e
其他信息 4: 492e3db3ad8992bc97739e530d98fae4