char dbuf[] = "测试字符串";
char* tpstr = dbuf;
QString csdata = QString::fromLocal8Bit( (char*)tpstr, -1 ); //显示csdata正确
unsigned char* pstr = (unsigned char*)csdata.data();//取数据的指针
sedes( (unsigned char*)pstr, strlen( (char*)pstr ) );//加密
sedes( (unsigned char*)pstr, strlen((char*)pstr) );//解密
QString mmn = QString::fromLocal8Bit( (char*)pstr, -1 ); //显示mmn数据错误,去掉加、解密过程也一样显示错误的据数,初步怀疑是错误是出在:
unsigned char* pstr = (unsigned char*)csdata.data();
这一行上,可是不知道什么改?
如果把这一行数据改为:
unsigned char* pstr = (unsigned char*)csdata.unicode():会显示不同的错误数据
请大侠帮帮忙,谢谢!