将int强制转换成short类型后的输出顺序疑问,该怎么处理

将int强制转换成short类型后的输出顺序疑问
C/C++ code

#include <stdio.h>
int main() {
    int array[5];
    for(int i=0;i<5;i++){
        array[i]=i;
    }
   for(int j=0;j<10;j++){
        printf("%d ",((short *)array)[j]);
    }
}


这段代码的输出为:0 0 1 0 2 0 3 0 4 0
为什么不是
0 0 0 1 0 2 0 3 0 4呢?




------解决方案--------------------
小端存储. 高字节在后,低字节在前