天天看点

汉字字符串异或加密问题

VC++中对一字符串(里面有汉字)进行异或加密,保存成文本,然后读文本,最后再异或解密,

字符串是先转成char数组的,发现用小于10的数异或的话不会出问题,但是用大的数(比如28)异或的话,加密后就字符串就变短了,好像是某些char异或后成了结束符。

我看有人说汉字的高位不能异或,只能异或低位,否则会溢出,我不太明白,请大家指教!异或会溢出吗?究竟为什么汉字高位不能异或?

谢谢