C语言中申请字符数组内存,并为其赋值后无法使用 free 释放
C语言中申请字符串内存,并为其赋值后无法使用 free 释放,并出现:Trace/breakpoint trap。
原因:使用等号对申请内存得到的字符串进行赋值,请使用其他的方法,例如:strcpy(st21,str2) 或 puts (str)。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argv, const char* argc[]) {
system("chcp 65001");
char* str = NULL;
str = (char*)malloc(1000);
str = "你好世界";//出错,请使用 strcpy()
// strcpy(str, "你好世界");
free(str);
str = NULL;
getchar();
return 0;
} 相关推荐
ThinkingLink 2020-01-11
twater000 2020-05-18
KilluaZoldyck 2020-02-23
angqiuli 2019-12-28
zzpdljd 2011-12-27
DishChickenC 2019-04-28
风和日丽 2019-06-28
oluckly 2012-08-14
86570895 2019-06-21
徐建岗网络管理 2012-07-06
lundongcai 2016-08-30
itkissit 2009-11-16
cabbges 2009-09-18
丁一鸣的CSDN 2014-05-19
electricperi 2012-11-25
wangtengphp 2014-03-21