今天又掉进这个坑里了,为了不手动malloc以及free内存,还有对字符串进行cat操作,直接使用了string类,结果发现老是不对,同样的算法,用php可以出来结果,但是用c语言时对时不对,这到底是什么原因呢?最终发现对string类所保存的变量进行操作时采用了异或,这样,如果两个相同的字符出现就会出现一个/0,因此所有的字符串操作都在这里结束了。那么string可不可以进行二进制操作呢?当然是可以的,但是你必须使用push_back这个函数来进行操作。
使用字符串进行二进制操作的杯具
最新推荐文章于 2022-05-25 10:56:36 发布
本文探讨了在C++中使用string类时遇到的问题,特别是关于字符串操作导致的错误结果。通过对string类成员函数push_back的正确使用,解决了因异或操作引入的二进制字符问题。
6498

被折叠的 条评论
为什么被折叠?



