判断当前机器的字节序。
思路:存1,取出第一个字节的内容:
若为小端,则为 01 00 00 00 … ;低地址为1
若为大端,则为00 00 00 01 ;低地址为0
#include <stdio.h> #include<windows.h> //判断是大端还是小端 int check_sys() { int i = 1; return (*(char *)&i); //&i 先对i取地址,(char *)(地址) 将地址强转为char类型的指针,一次指向一个字节, *( ) 解引用,取出第一个字节的内容。 } int main() { int ret = check_sys(); if (ret == 1) { printf("小端\n"); } else { printf("大端\n"); } system("pause"); return 0; }