![](https://img-blog.csdnimg.cn/4307066ff83f413b8bfcc4c7ee39e3af.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
C语言干货
文章平均质量分 54
没有基础知识,全是C语言干货
外来务工人员徐某
只写自己不懂的。
展开
-
【C语言】那些优秀代码里的骚操作(持续更新…)
语言这个东西,其实没有奇技淫巧,凡是可以写出来的,能被编译器识别的,都是常规操作,只是由于对知识理解的不透彻而对一些现象的产生的惊奇。然而,我们应该保持这样的惊奇,纪德说:“智者,乃是对一切都发生惊奇的人。”原创 2022-12-11 00:08:29 · 917 阅读 · 1 评论 -
【C语言】如何优雅地进行嵌入式C开发?(万字总结)
如果当你听过很多大道理,依然写不好C代码,就来读读这篇文章吧!!!关键词:代码质量、分层设计、设计模式、面向对象、防御式编程原创 2022-10-11 00:34:00 · 5392 阅读 · 4 评论 -
【C语言】代码命名规范
基于已有C语言规范,总结统一自己的代码风格。原创 2022-10-05 16:28:24 · 1298 阅读 · 0 评论 -
【C语言】三剑客之《C陷井与缺陷》完整笔记
C语言缺陷与陷井第1章:词法陷井1.1运算符陷井1.1.1 =不等于==1.1.2 &和| 不同于 &&和||1.1.3 “贪心法”1.2 进制陷井1.3 字符与字符串陷井第2章:语法陷井第3章:语义陷井第4章:连接第5章:库函数第6章:预处理器第7章:可移植性缺陷第8章:C建议第1章:词法陷井1.1运算符陷井1.1.1 =不等于==在C中,“=”是赋值,“==”是判断当判断变量与变量时,很容易误写成if(x = y),语法上没错编译器不会报错,但是功能不对,如果非要用赋原创 2020-06-07 17:50:02 · 1005 阅读 · 2 评论 -
【C语言】回调函数的理解和使用
1、先来回答这个奇奇怪怪的名字,为啥叫回调函数,调就调,咋还回调,那先看它是怎么使用的:int main(){ F1(F2);}mian函数要调用F1,如果程序立马执行了F1,那么就是正常的调用,但是在这里不是。在这里,F1里面有个参数:函数指针F2,程序会先去执行F2指向的函数,回头再来执行F1。说得通俗点,你妈让你去买菜,但是不知道买什么好,让你去问你奶奶,你问完了再回来买菜。你妈是mian函数,你奶奶就是F2,你是F1,目的就是要得到“菜”这个返回值。所谓回调,就是回头再买。2、原创 2020-05-23 12:47:59 · 1140 阅读 · 2 评论 -
【C语言】结构体字节对齐的本质和使用
编程细节:结构体字节对齐1.在c语言中#include <stdio.h> //默认情况下,结构体一般在内存中的自动对齐格式是4个字节 ,即向四个字节的变量对齐//设置手动对齐 //如果这里是4,那么下面的打印就是8 //如果这里是2,那么下面的打印就是6 //如果这里是1,那么下面的打印就是5 #pragma pack(4)struct m...原创 2019-05-13 10:04:12 · 256 阅读 · 1 评论 -
【C语言】浮点型数据为什么不能直接比较
编程细节:浮点型数值的比较浮点型数值不能直接比较,要先定义一个极小值,如果两个数的差值小于这个极小值,则认为两个数相等#define MIN 0.0000000001 //定义一个极小值double temp = 2.5;if(abs(temp - 2.5) < MIN){ return ;}...原创 2019-10-23 19:15:33 · 1653 阅读 · 1 评论 -
【C语言】memcpy字符串拷贝函数的陷井
编程细节:memcpymemcpy拷贝的是字符串,如果拷贝字符数组,很有可能遇到\0元素,导致拷贝终止。 所以Data中的数据很有可能不完整:BUF={12,AF,AB,1D,10,00,A1};memcpy(Data,&BUF,sizeof(BUF));Data={12,AF,AB,1D,10};//丢失00和A1...原创 2019-05-14 18:42:27 · 3055 阅读 · 2 评论