首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

帮忙看一下哪里有异常,windows停止运行了

2013-12-02 
帮忙看一下哪里有错误,windows停止运行了#includecstringvoid swap_str(char *str1,char *str2){char* t

帮忙看一下哪里有错误,windows停止运行了
#include<cstring>
void swap_str(char *str1,char *str2)
{
char* temp = "0" ;
strcpy(temp,str1);
strcpy(str1,str2);
strcpy(str2,temp);
}
int main()
{
char* str1 = "helloworld";
char* str2 = "ni hao";
cout<<"交换之前 "<<"str1: "<<str1<<" str2: "<<str2<<endl;
swap_str(str1,str2);
cout<<"交换之后 "<<"str1: "<<str1<<" str2: "<<str2<<endl;
return 0;
}
[解决办法]


//1 都是不只读区间存放的!read only 所以修改会报错!
char* str1 = "helloworld";
char* str2 = "ni hao";
//改成
char str1[10]  = "helloworld";
char* str2[10] = "ni hao";

//2char* temp = "0" ;没有分配空间,拷贝的内容没有地方存放,内存出错
//改成
char temp[10] = {0}; 

[解决办法]
崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处。

热点排行