char* str=new char;sprintf(str,"%s","xxxxx");delete str;str=NULL;//执行到此,出错,为何? char* str=new char;sprintf(str,"%s","xxxxx");delete str;str=NULL;//执行到此,出错,为何? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 new char 你只分配了一个字节,你说会不会出错? char* str=new char[20];sprintf(str,"%s","xxxxx");delete []str; 你的new char 只分配了一个字符的内存,而sprintf(str,"%s","xxxxx")中字符串是多个字符,所以删除的时候错可以改为char* str=new char[300];sprintf(str,"%s","xxxxx");delete str;str=NULL;// OpenCV为什么只保存视频的前景帧后得到的是无效的文件?附代码 我有一个类在工程里有这个类,但看不到这个类应该怎么做? 一个简单的正则表达式问题 请问,我想VC工程里,调用ASM文件中我用win32汇编写的函数,请问可以吗? 怎样返回类指针?? 欢迎讨论:关于面向对象与面向组件技术的一些区别的理解。 怎样制作类似media player的漂亮界面(VC.NET) 哪位朋友可以介绍一个在北京的软件开发工作或者转让一个软件开发项目,Up者有分! MSDN中的TAPI文档在哪里,我怎么找不着? vc到底适合用来干什么??? 如何做一个圆形按钮? 程序中怎么改Form的大小???
sprintf(str,"%s","xxxxx");
delete []str;
可以改为
char* str=new char[300];
sprintf(str,"%s","xxxxx");
delete str;
str=NULL;//