我在从 char[] 获取整数时遇到问题。我是一个非常简单的代码行,但我看不出问题出在哪里。
这是代码:
char* rawd = .....
int resultSize = ((int*)rawd)[0];
cout << "BYTES ::: " << (int)(rawd[0]) << " " << (int)(rawd[1]) << " " << (int)(rawd[2]) << " " << (int)(rawd[3]) << endl;
cout << "SIZE RETURNED :::::: " << resultSize << endl;
这是打印的内容:
BYTES ::: 0 0 4 0
SIZE RETURNED :::::: 262144
我预计resultSize
是1024。
为什么resultSize
包含 262144 而不是 1024?