2 u010132497 u010132497 于 2016.05.11 21:44 提问

这个程序运行一下为什么提示exe已停止工作?

#include

void strcpy(char *,char *,int);

int main()
{
char *s = "1245";
char *t = "3123";

strcpy(s,t,3);
printf("%s\n",s);
return 0;

}
//函数strcpy(s,t,n)将t中UI多前n个字符复试到s中
void strcpy(char *s,char *t,int n)
{
while( n-- && *t )
*s++ = *t++ ;
*s = '\0';
}

2个回答

qq423399099
qq423399099   Ds   Rxr 2016.05.11 22:02
已采纳

char *s = "1245";这样的写法,表示s指向常量区的一个常量字符串"1245",该区域是不允许进行写操作的
改成char s[5] = "1245";就行了

 #include<stdio.h>
void strcpy(char *,char *,int);
int main()
{
    char s[5] = "1245";
    char *t = "3123";
    strcpy(s,t,3);
    printf("%s\n",s);
    return 0;
}
//函数strcpy(s,t,n)将t中UI多前n个字符复试到s中
void strcpy(char *s,char *t,int n)
{
    while( n-- && *t )
        *s++ = *t++ ;
    *s = '\0';
}
u010132497
u010132497 谢谢你。你的回答真是让我柳暗花明,豁然开朗
大约 2 年之前 回复
wll1228
wll1228   2016.05.11 22:24

char *s="12345",左边的字符指针在栈中的变量。右侧的字符串常量是放在存储区的,是只允许读,不允许写的。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
C语言程序运行后 出现exe已停止工作
这是很常见的错误 runtime  error (运行时错误)就是程序运行到一半,程序就崩溃了。 比如说: ①除以零 ②数组越界:int a[3]; a[10000000]=10; ③指针越界:int * p; p=(int *)malloc(5 * sizeof(int)); *(p+1000000)=10; ④使用已经释放的空间:int * p;
Qt应用程序“xxx.exe 已停止工作 故障模块msvcr120.dll”
一、问题描述:相信许多程序员都遇到过这种问题,好不容易写好程序,准备打包啦。在自己电脑上运行时,一切都很正常,放到其他电脑上死活运行不起来、要么出现很多问题,最糟糕的是直接崩溃!最近就遇到了一个让我崩溃的问题,在其他电脑上运行时一直出现“xxx.exe 已停止工作 故障模块msvcr120.dll”,使用各种修复工具修复dll,使用depenency walk找各种依赖库都没有解决该问题。错误截图如
关闭”xx程序已停止工作”提示窗口
近日在工作中,接手一个项目,程序运行起来后偶发性间隔几个小时或几天就会出现如下(图1, 图2)的”xx程序已停止工作”的提示窗口,这时需要用户手动点击”关闭程序”按钮,进程才会退出。 图1   图2   当然最好的解决办法就是找出程序中导致”程序错误”的原因,但由于对接手的项目不是很熟悉,再加上时间紧迫,难以在短时间找到问题原因,于是给此程序添加一个”守护程序”(即: 检测到
vs2015 项目启动 vshost.exe 已停止工作
这学期asp.NET的课,让我随便又重新接触了巨硬的vs,无奈之前安装了vs for mac的预览版却功能缺失,又不愿意在mac那寸土寸金的固态上安一个那么大的使用率又低的vs,所以就在学校的服务器上安了个vs2015 update3和sql server 2014嘿嘿嘿.学校IBM的大服务器比较老,配套的光盘驱动都还是server 2008 R2的,所以那时候也就直接安了,原本准备安sql ser
qtcreator.exe 已停止工作 解决方法
检查主板驱动是否安装,建议使用笔记本官方的软件安装驱动 检查笔记本是否支持openGL,不支持就没法了. 检查显卡驱动是否安装. 一般驱动安装正常,只要电脑支持openGL,都不会出现停止工作这类错误
PyCharm的Python.exe已经停止工作
今天遇到一个问题,就是用pycharm运行python程序,老是会出现Python.exe已停止的对话框。后来我到处在网上搜原因,网上给出的解决办法也有很多种。最终帮我解决问题的就是:打开网络防火墙,把相应的Python.exe,pythonw.exe还有sqlservr.exe添加到防火墙允许程序列表就可以了。 真的是山重水复疑无路,柳暗花明又一村。 怎么打开防火墙:控制面板--Window
adb.exe 已停止工作 频繁弹出解决方法
周一早上一来打开eclipse,win7-64位电脑就频繁弹出“adb.exe 已停止工作 ”,烦不胜烦…… 1.重启eclipse,重启电脑都不行 2.使用http://www.cnblogs.com/hakuci/archive/2012/01/07/2315472.html 替换abd也不行 鼠标右键点击电脑下边导航栏——启动任务管理器 打开adb.exe——打开文件夹位置
当程序出现已停止工作
问题描述:  写的程序运行起来后 ,也捕获了异常 但是出现系统级的报错:"程序已停止工作". 原因分析:是子线程里面的程序异常了,但又没有捕获异常所以就会报出这个异常. 解决办法:在子线程中捕获异常,做异常处理.
C语言里程序编译无误但运行会弹出程序已停止运行是为什么?
C语言里程序编译无误但运行会弹出程序已停止运行是为什么?原文链接(https://zhidao.baidu.com/question/1178139670043658699.html) 摘要 1. 内存溢出 内存溢出(out of memory)通俗理解就是内存不够,程序所需要的内存远远超出了主机内安装的内存所承受大小,就叫内存溢出。系统会提示内存溢出,有时候会自动关闭软
运行exe停止工作的一个问题
exe停止工作,点开详细信息,发现: 故障模块名称 KERNELBASE.dll。 然而这个信息好像并没有什么用。 点击调试,在VS中发现报错信息: “xxx.Program”的类型初始值设定项引发异常。 这个信息好像也没有用,因为代码是没有问题的,在另一个地方可以运行。 最后发现是引用的NPOI.dll的版本问题。 换了一份NPOI的dll包就不报错了。 也就是说