Avatar notebook default
22篇文章 · 8218字 · 2人关注
  • C语言 宏定义 swap

    方法1: 方法2: 说明: a^=b;:把a^b结果赋值给a b^=a;:相当于b=b^(a^b)。而b^(a^b)等于a^b^b。b^b的结果...

  • C语言 宏陷阱与缺陷

    1. 不能忽视宏定义中的空格 #define f (x) ((x)-1) 上面的宏定义中展开后变成 (x) ((x)-1) 而不是 ((x)-1...

  • #error、#warming、#、##的简单使用

    1.#error的用法 #error用于生成一个编译错误消息,并让预编译器停止编译,这个错误消息是自己定义的。用法:#error Message...

  • C语言读写文件

    fread函数和fwrite函数 1.函数功能 用来读写一个数据块。 2.一般调用形式 fread(buffer,size,count,fp);...

  • Resize,w 360,h 240
    代码背后的简单数学原理(2)

    在做项目需要用到时间戳,需要把以秒为单位的时间戳转换为正常时间,于是就有了下面这些代码。

  • 代码背后的简单数学原理(1)

    问题 引子 问题1:假设有要把一批货物放到集装箱里,货物有12件,一个箱子最多能装6件货物,求箱子的数目。解答:显然我们需要12/6=2个箱子,...

  • 时间片轮询法

    第一步:定义任务个数(非必要),如下所示: 第二步:定义一个结构体类型,该结构体定义了一个任务结构,定义如下所示: 第三步:定义任务变量,并初始...

  • C语言二进制输入宏以及参数检查

    对于玩单片机的初学者来说,二进制转换是第一个“拦路虎”,现在不怕了哈(^_^) 第一种方法 #define _bin(a,b,c,d,e,f,g...

  • 内存对齐

    什么是内存对齐?先看下面的的结构体: 假设这个结构的成员在内存中是紧凑排列的,假设c1 的地址是0,那么s 的地址就应该是1,c2 的地址就是3...

文集作者