自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 资源 (3)
  • 收藏
  • 关注

原创 细数linux内核里那些偏门的C语言语法(四)(unsigned long)-MAX_ERRNO

这个语法应该很多人知道,看来还是我基础不好,所以才一时没看懂同样是在跟内核代码码时发现#define IS_ERR_VALUE(x) unlikely((x) >= (unsigned long)-MAX_ERRNO) 其中#define MAX_ERRNO 4096 (unsigned long)减去MAX_ERRNO ? 这是什么鬼? 其实不是,真正的意思是

2017-06-19 11:41:05 1790

原创 细数linux内核里那些偏门的C语言语法(三) !!(x)

经常看到判断语句前面有加likely(x),知道这是告诉编译器,这个判断语句很可能为“真”,这样有利于提高程序运行速度。但是从来没有跟进去看下,跟进去之后看到likely(x) __builtin_expect(!!(x), 1)  __builtin_expect (exp, c)是gcc编译器的编译指令,告诉编译器,exp==c  很可能成立 但是!!(x)又是什么

2017-06-19 11:15:28 582

原创 细数linux内核里那些偏门的C语言语法(二)x... 与 #x

同样是在跟linux内核源码的时候,看到这样的宏定义 #define __stringify_1(x...) #x#define __stringify(x...) __stringify_1(x)x...是什么意思呢? #x又是什么意思? #x是将x转换成字符串。比如下面代码 printf(__stringify

2017-06-17 18:38:42 550

原创 细数linux内核里那些偏门的C语言语法(一)简化三目运算

#include int main(){ int a = 3; printf("a = %d\n", a?:4);}这里先简单介绍一些三目运算,就是  表达式1 ? 表达式2 : 表达式3当表达1结果非0时结果为表达式2当表达1f结果为0时结果为表达式3 比如 int a = 3;int b;b = a? a : 6;如果a为0,b 结果为6,其

2017-06-17 16:36:44 1301

OpenCv3.0 各个函数索引和说明

可以索引所有OpenCv3.0.0的函数说明,包括功能,输入参数等等

2018-05-08

STM32 IAP之bootloader YMODEM协议

STM32 IAP之bootloader 采用YMODEM协议 用于stm32芯片升级

2018-02-28

ADSP-BF70x_Blackfin_Programming_Reference

ADSP-BF70x英文编程手册,寄存器说明

2017-04-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除