
C语言
起舞的迈特凯
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
DEVICE_ATTR demo简单使用(实用)
1. DEVICE_ATTR 创建设备节点,可以write/read信息,操作gpio等,很实用.2. DEVICE_ATTR函数原型(include/linux/device.h)#define DEVICE_ATTR(_name, _mode, _show, _store) \ struct device_attribute dev_attr_##_name = __ATTR(_name, _mode, _show, _store) /* interface for exp原创 2020-08-28 17:02:46 · 1232 阅读 · 1 评论 -
typedef 与宏定义的区别
typedef 与宏定义的区别陷阱一: 记住,typedef是定义了一种类型的新别名,不同于宏,它不是简单的字符串替换。比如: 先定义: typedef char* PSTR; 然后: int mystrcmp(const PSTR, const PSTR); const PSTR实际上相当于const转载 2013-11-15 21:23:22 · 868 阅读 · 0 评论 -
内联函数与宏定义(转)
好多公司的笔试题都有它,我吃了两次亏,长了一智文章(一)内联函数与宏定义 在C中,常用预处理语句#define来代替一个函数定义。例如: #define MAX(a,b) ((a)>(b)?(a):(b)) 该语句使得程序中每个出现MAX(a,b)函数调用的地方都被宏定义中后面的表达式((a)>(b)?(a):(b))所替换。 宏定义语句的书写格式有转载 2013-11-15 21:21:20 · 666 阅读 · 0 评论 -
C语言指针参数讲解(转)
程序1: void myMalloc(char *s) //我想在函数中分配内存,再返回 { s=(char *) malloc(100); } void main() { char *p=NULL; myMalloc(p); //这里的p实际还是NULL,p的值没有改变,为什么? if(p) free(p); } 程序2:void myMalloc(c转载 2013-11-12 16:20:56 · 880 阅读 · 0 评论