![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C
文章平均质量分 51
btoh_workstation
这个作者很懒,什么都没留下…
展开
-
isdigit()极品实现
我不得不承认,在编程的世界,无奇不有,码农的创造力是无穷的,也是妙不可言的!只要涉及到效率,永远是没有最快,只有更快! 我们知道,在标准C中,有函数int isdigit(int c)可以用来判断字符c是否为0~9之间的数字。比如: 1 int a = isdigit('1'); //a == 1 2 int b转载 2014-05-16 10:19:34 · 728 阅读 · 0 评论 -
memset函数原型
memset: [cpp] view plaincopyprint? void* cb_memset(void* buffer, int b, size_t size) { assert(buffer!=NULL); char* retAddr = (char*)buffer; while (size-- > 0) { *(retAddr+转载 2014-05-17 09:25:43 · 575 阅读 · 0 评论 -
U-boot中的gd结构体
U-boot中有一个用来保存很多有用信息的全局结构体--gd_t(global data缩写),其中包括了bd变量,可以说gd_t结构体包括了u-boot中所有重要全局变量。 对于ARM平台这个结构体的定义大致如下: include/asm-arm/global_data.h typedef struct global_data { bd_t *bd; unsigned lo转载 2014-05-26 19:35:55 · 566 阅读 · 0 评论 -
Linux 内核list_head 学习(一)
在Linux内核中,提供了一个用来创建双向循环链表的结构 list_head。虽然linux内核是用C语言写的,但是list_head的引入,使得内核数据结构也可以拥有面向对象的特性,通过使用操作list_head 的通用接口很容易实现代码的重用,有点类似于C++的继承机制(希望有机会写篇文章研究一下C语言的面向对象机制)。下面就是kernel中的list_head结构定义: struct li转载 2014-05-26 19:02:01 · 3420 阅读 · 0 评论