我对系统/ CPU / 程序的字节顺序感到困惑。
因此,我必须提出一些问题来澄清我的想法。
问题1
如果在我的C++程序中仅使用类型char
:
void main()
{
char c = 'A';
char* s = "XYZ";
}
将此程序编译为名为a.out
的可执行二进制文件。
a.out
能在小端和大端系统上都运行吗?
问题2
如果我的Windows XP系统是小端序的,我能否在VMWare/VirtualBox中安装大端序的Linux系统?什么决定了一个系统是小端序还是大端序?
问题3
如果我想编写一个字节序无关的C++程序,我需要考虑什么?