C语言&*符号使用及大端法小端法测试

Posted kingofkai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言&*符号使用及大端法小端法测试相关的知识,希望对你有一定的参考价值。

工具:Microsoft Visual C++ 6.0

例子:

int a = 1;

int* b = &a;

C语言规定a表示存储单元中的数据,&a表示存储单元的地址,b存储的就是a的地址

C语言规定*a代表a中存储的地址对应的存储单元中的数据,所以*b就是等于1

 

C语言的&*介绍完毕,开始测试本机是大端法,还是小端法?

#include <stdio.h>
#include <stdlib.h>

int main()
    int a = 0x12345678;
    char* c = &a;                    # c = a的值存储的4个字节地址的首地址,也就是低地址,char占用一个字节
    printf("%x\n", a);
    printf("%x\n", *(c + 0));        # 地址的地址,也就是a低地址存储的值,经过电脑运行,输出78,也就是低位存储在低地址,我的电脑是小端存储
    printf("%x\n", *(c + 1));
    printf("%x\n", *(c + 2));
    printf("%x\n", *(c + 3));

 

以上是关于C语言&*符号使用及大端法小端法测试的主要内容,如果未能解决你的问题,请参考以下文章

用c语言写个函数测试处理器是大端还是小端程序怎么写?

大端小端法

大端法和小端法

js arrayBuffer 字节序问题,小端法,大端法

C语言重难点:大端小端(在一个64位的操作系统中定义如下结构体:)

计算机组成原理 王道考研2021 第二章:数据的表示和运算 -- C语言中的强制类型转换数据的存储和排列(数据的“大端方式”和“小端方式”存储数据按“边界对齐”方式存储)