C语言
文章平均质量分 57
weixin-W1623210897
每天进步一点点 终究会有收获
展开
-
2021-05-11
写给嵌入式程序员的循环冗余校验(CRC)算法入门引导前言CRC校验(循环冗余校验)是数据通讯中最常采用的校验方式。在嵌入式软件开发中,经常要用到CRC 算法对各种数据进行校验。因此,掌握基本的CRC算法应是嵌入式程序员的基本技能。可是,我认识的嵌入式程序员中能真正掌握CRC算法的人却很少,平常在项目中见到的CRC的代码多数都是那种效率非常低下的实现方式。其实,在网上有一篇介绍CRC 算法的非常好的文章,作者是...转载 2021-05-11 11:24:33 · 167 阅读 · 0 评论 -
extern声明全局变量的用法
这篇文章主要讲解一下extern声明全局变量的一些用法,虽然知识点比较浅显,但是却容易犯错,仅与那些初学C++的朋友分享,希望没有让大牛们见笑。 extern最基本的用法是声明全局变量的。这里需要注意两点,一是“声明”,二是“全局变量”;我们先来分析这两个概念。 声明:声明和定义是有区别的。声明不等于定义,声明只是指出了变量的名字,并没有为其分配存储空间;定义指出变量名字同时为变量分配存储空间,定义包含了声明。例如...转载 2021-03-25 14:10:06 · 2173 阅读 · 0 评论 -
C语言指针强制类型转换
概要: C语言中,任何一个变量都必须占有一个地址,而这个地址空间内的0-1代码就是这个变量的值。不同的数据类型占有的空间大小不一,但是他们都必须有个地址,而这个地址就是硬件访问的依据,而名字只是提供给程序员的一种记住这个地址的方便一点的方法。但是,不同的变量在机器中都是0-1代码,所以,我们不能简单的通过检查一个值的位来判断它的类型。 例如,定义如下: int a; float b; do...转载 2021-03-25 13:32:50 · 4020 阅读 · 0 评论 -
判断机器大小端问题
大端存储:即高字节存储在低地址处,即高位先存,大端也叫“高尾端” 小段存储:即低字节存储在高地址处,即低位先存,小端也叫“低尾端” 大端存储:例如0x11223344,则44就是尾端,存储地址假如从0~4,则当存储这个数据时,将依次从低地址0向高地址4存储,且按照11~44的顺序存储就叫大端存储。 小段存储:例如0x11223344,则44就是尾端,存储地址假如从0~4,则当...转载 2020-12-18 17:30:07 · 176 阅读 · 1 评论 -
大端小端格式详解
1. 什么是大端,什么是小端: 所谓的大端模式,是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中; 所谓的小端模式,是指数据的低位保存在内存的低地址中,而数据的高位保存在内存的高地址中。 2.为什么会有大小端: 为什么会有大小端模式之分呢?这是因为在计算机系统中,我们是以字节为单位的,每个地址单元都对应着一个字节,一个字节为8bit。但是在C语言中除了8bit的char之外,还有16b...转载 2020-12-10 13:24:47 · 474 阅读 · 0 评论 -
25匹马,5个跑道,每次只能5匹马跑,问最少几次得到跑的最快的3匹马
正确答案: 7 场。推理过程:你可以先询问面试官,「最快」的意思,是不是指比赛时总能赢?在真实情况下并非如此。但倘若你假设, A 在比赛中跑赢了 B , A 就无可争议地跑得更快,这就极大地简化了这道谜题。面试官会告诉你,这么想没有问题,比赛就是为了选出跑得最快的马。通常,...转载 2020-03-05 16:18:43 · 5887 阅读 · 0 评论 -
几种求32位数中1的个数的算法
方法一:最简单的循环位运算int count1(int i){ int num=0; while(i!=0) { num += i & 0x01; ...转载 2020-03-05 16:08:13 · 814 阅读 · 0 评论