一级指针 :是一个变量,存放内存单元的地址。(存放在指针中的值都被当作地址来处理) int num = 6; int* p = # printf("%p",p);//此时变量p里存放的是num的地址 指针的运算: 指针+-整数: int n = 10; char *pc = (char*)& ...
分类:
编程语言 时间:
2019-02-24 13:37:07
阅读次数:
161
<!-- flowchart 箭头图标 勿删 --> 昨天最后一天工作日,让我碰到了两个有意思的C语言编程问题,周末前权当轻松一下,挺有意思就过去了,因为今晚雨夜通宵,就把它们记录了下来。 事件1:关于结构体对齐和packed属性 下午跟同事下楼抽烟,聊到一个有意思的问题,不讲故事了,直接看问题: ...
分类:
编程语言 时间:
2019-02-17 13:00:37
阅读次数:
207
在小端模式下,输出为: 在大端模式下,输出为: ...
分类:
其他好文 时间:
2019-02-16 11:55:06
阅读次数:
149
计算机存储数据是按大端或者小端将数据保存在内存上. 一般处理器都只选择其中的一种, 通常 和`AMD IBM`公司的处理器. 小端储存 : | 0x1003 | 0x78 | | : | : | | 0x1002 | 0x56 | | 0x1001 | 0x34 | | 0x1000 | 0x12 ...
分类:
其他好文 时间:
2019-02-11 12:31:03
阅读次数:
202
Table of Contents 1. "前言" 2. "字符数组的本质" 3. "整数数组与 1000000000 进制" 4. "小端模式存储" 5. "和 10 进制字符串之间的转换" 6. "大数加法" 7. "大数乘法" 8. "结语" 9. "参考链接" 前言 大数的实现应该是很多人在 ...
分类:
其他好文 时间:
2019-02-09 16:24:30
阅读次数:
222
1.字节序 比如int a=0x12345678; 大端字节序:低字节存在高位,高字节存在低位。78存在高位,12存在低位。 小端字节序:低字节存在地位,高字节存在高位。78存在低位,12存在高位。 x86通常是小端,arm通常大端。 面试常考题:如何知道自己机器是大端还是小端? 答: 一般网络字节 ...
分类:
其他好文 时间:
2019-01-13 01:49:53
阅读次数:
192
在网上找到了一份斗鱼弹幕服务器第三方接入协议v1.6.2,有了第三方接口,做起来就容易多了。 一、协议分析 斗鱼后台协议头设计如下: 这里的消息长度是我们发送的数据部分的长度和头部的长度之和,两个消息长度是一样。然后要注意的是该协议使用的是小端整数,所以我们要对数据进行处理后再发送,这里可以使用in ...
分类:
编程语言 时间:
2019-01-09 15:05:18
阅读次数:
262
大小端模式的定义在百度百科上有明确的说法,意思就是就是数据的高位存储在第地址的是低位的是大端模式,数据的高位存储在地址的低位的就是小端模式。说着也不清楚。我们这里讨论的是CPU的大小端模式而不是通讯协议的大小端。要记住的是现在主流的CPU都是小端模式例如arm等,大端模式的代表是c51系列。还有要知道的是怎么测量当前平台是什么模式一般来说流行的有两种方法一种是用union但这种方法也是基于指针的其
分类:
其他好文 时间:
2019-01-07 21:21:37
阅读次数:
168
1、1字节=8位,1024字节=1KB2、16进制0x12345678,其二进制为00010010 00110100 01010110 01111000共4字节3、字节序:两个或多个字节存放的先后顺序(Big Endian大端序,Little Endian小端序)。UTF-16编码的头2个字节里标记 ...
分类:
编程语言 时间:
2019-01-04 14:58:54
阅读次数:
271