【发布时间】:2012-09-15 11:59:46
【问题描述】:
处理一些需要在函数中使用无符号字符的加密,但希望在解密后转换为字符以供使用。所以,我有:
unsigned char plaintext[16];
char *plainchar;
int plainint;
... Code now populates plaintext with data that happens to all be plain text
现在,假设明文实际上是“0123456789”的数据字符串。如何将纯文本的值转换为“012456789”的plainchar,同时将plainint 转换为123456789?
-- 编辑--
当明文等于“AAAAAAAAAA105450”时这样做:
unsigned char plaintext[16];
char *plainchar;
int plainint;
... Code now populates plaintext with data that happens to all be plain text
plainchar = (char*)plaintext;
使 plainchar 等于“AAAAAAA105450╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠5┤∙7”,大小为. 加密代码是 rijndael 示例代码,所以应该可以正常工作。
谢谢, 本
【问题讨论】:
-
我希望你不会认为字符串“1234”(0x31323334)在任何方面都等同于二进制字符数组“0x01020304”。只是检查;)
标签: c visual-studio-2010 char int unsigned-char