C strcpy

[复制链接]
查看11 | 回复3 | 2010-4-13 14:41:18 | 显示全部楼层 |阅读模式
str="haha"; 这里的"haha"是一个字符串常量,它的内容不能再修改,后面的strcpy()试图修改字符串常量的值,所以出错。
回复

使用道具 举报

千问 | 2010-4-13 14:41:18 | 显示全部楼层
你str="haha";赋值是将str指针指向一个字符串常量,字符串常量是不能被修改的。
回复

使用道具 举报

千问 | 2010-4-13 14:41:18 | 显示全部楼层
修改成:char *str = new char[5];strcpy(str, "haha");cout << str;delete [] str;str = NULL;就可以了,错误的原因楼上已经回答了。
回复

使用道具 举报

千问 | 2010-4-13 14:41:18 | 显示全部楼层
str在内存没有释放的情况下,又新赋值,会乱码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行