关于将用堆形式储存的数据变为字符串型数据的问题
创建了个堆对象,储存了一些字符数据在里面,怎样才能将这整个堆内的所有数据直接变为一个字符串型的数据?
望高人指点~~~~谢谢~~~O(∩_∩)O~
[解决办法]
内置类型,请直接使用指针的强制转换(char*),不会改变内存数据
[解决办法]
类类型,在确定内部没有什么copy on write之类的特殊机制的情况下,也可直接转换,当然,更安全的方式是memcpy到一个字符串
[解决办法]
是要这个效果么:
string str(p, p+len);
[解决办法]
1. 你确定字符存储的空间是连续的么?(如果是new出来的数组没问题)
2. 直接char*转很危险,只有当它遇到'\0'时才认为一个字符串结束,所以可能会出现内容截短或越界访问的问题。
建议定义一个类,封装对char[]类型的增删改查
[解决办法]
无汇编无真相!
[解决办法]