【发布时间】:2012-10-12 20:45:36
【问题描述】:
我一直在阅读这个帖子Store an int in a char array?
我需要将 int 存储在字符数组中。
所以我阅读了上一个帖子并尝试制作自己的演示。但它不起作用,试图弄清楚为什么不这样做很长时间。或许你能给我一些线索或想法吗?
#include <stdio.h>
int main(void) {
char buffer[4];
int y = 2200;
buffer[0] = (y >> 0) & 0xff;
buffer[1] = (y >> 8) & 0xff;
buffer[2] = (y >> 16) & 0xff;
buffer[3] = (y >> 24) & 0xff;
int x = buffer[0];
printf("%i = %i\n", y, x);
}
输出
gcc tmp.c && ./a.out
2200 = -104
【问题讨论】:
-
这并不能直接解决您的问题,但请注意您对系统上
int大小所做的假设。