C语言积累
来源:互联网 发布:淘宝看店宝插件下载 编辑:程序博客网 时间:2024/06/05 09:08
1.大端小端区分
大小端模式就是存储数据时,数据的高低位怎么存储在地址的高低位上。(位指的是bit,一个char类型数据有8位)
大端模式:数据的高位,存放在地址的低位。(高位存低位,低位存高位)
小端模式:数据的高位,存放在地址的高位。(高位存高位,低位存低位)
我们的pc机一般都是小端模式,个人感觉这也更符合我们的习惯,在地位置的就是低位数据
(1) 位移方法判断
#include <stdio.h>
#define BigorLittle(k) (((k) >> 8) ? (printf("Big!\n")):(printf("Little!\n")))
int main(int argc, char * argv[])
{
unsigned short a = 2;
BigorLittle(a);
return 0;
}
如果1存放在高位,右移8位后1还是存在的;如果1存放在低位,右移8位后1将被移出数据,所以不存,结果为0。
地址: 高地址 <<====== 低地址
小端模式存放:0000 0001 >> 8 == 0000 0000
大端模式存放:1000 0000 >> 8 == 0000 1000
(2) 数据类型强制转换
a = 1 ,变成二进制为:0000 0001.强转为char时,保留unsigned short a变量的低8位。所以这样就更加明了了。因为1低位数据,如果char c不为0,表明1存放在低位,即是小端模式;如果char c变量为0,表明1存放在高位,即是大端模式
#include<stdio.h>
int main(void)
{
unsigned short a=1;
char c;
c = (char)a;
(c)?(printf("Little!\n")):(printf("Big!\n"));
return 0;
}
- C语言积累
- C语言知识点积累
- C语言编码积累
- C语言积累
- C语言积累2
- C语言积累
- C语言技术积累
- C语言编码积累
- C语言点滴积累
- C语言积累
- C语言常犯错误积累
- C语言的知识积累
- C语言小知识点积累
- C语言文件操作积累
- C语言字符串操作积累
- C语言编程积累2
- c语言常用代码积累
- C语言常用知识积累
- DeepLearning-聊一聊深度学习的weight initialization
- 带缩略图的纯图片jq幻灯片插件
- ceph RADOS架构 monitor
- 插入排序、折半插入排序、希尔排序(缩小增量排序)
- java.lang.ClassNotFoundException
- C语言积累
- 利用sqlacodegen自动生成ORM实体类
- 第九周项目1
- 上传文件
- Android Studio 3.0全新时代:带来的一些新功能
- 用jsoup解析word文档转变的html项目实例
- git: missing xcrun
- 解决Hbase启动报错问题:No such file or directory!
- 回溯法求素数环