众所周知,每个可打印字符都有其 ascii 值。我正在尝试将 8 个字符的 ascii 值转换为 64 位整数,但它只复制 32 位。
char * ch = "AAAABBBB";
unsigned long int i;
//copy charater's ascii to 64 bits int
memcpy(&i, ch, 8);
printf("integer hold: 0x%x\n", i);
这段代码有问题吗?
我期望的输出是:
integer hold: 0x4141414142424242
但输出是:
integer hold: 0x41414141