c语言
文章平均质量分 70
yskcg
这个作者很懒,什么都没留下…
展开
-
calloc函数的实现代码
#include<alloc.h>#include<stddef.h>#include<mem.h>void* calloc( size_t nsize,size_t elsize){ unsigned long msize; register char *cp;...原创 2010-09-01 21:00:00 · 2420 阅读 · 0 评论 -
c语言中的宏的妙用
文章背景前段时间,为了做一个项目中的程序,大致是实现SQL类似功能的索引功能,需要建立一张索引表,分析后,该表是在程序运行前就存在的,在参考优秀代码后,自己还是决定用宏来写这样一个功能的实现代码。C语言中宏的功能1) 替换功能,the basic function is knowed by all programers,I think;就是这个小小的功能,却能够使程序看起来高深莫测许多...原创 2012-11-19 23:06:13 · 2113 阅读 · 0 评论 -
Vim 我常用的命令和插件
自己常用的命令有: x 删除 dd 删除整行 J 删除换行符 O 在当前行上例外起一行 w 一word 单位向前来移动光标 b 以word 单位来后移动光标 $ 将光标移动到该行末尾 fx 移动到指定的字符上面 % 跳转到与当前光标下的括号相匹配的那一个括号上去。 G 跳转到指定行上面,或者和一些搭配使用时跳到文件...原创 2011-11-13 14:19:52 · 713 阅读 · 0 评论 -
container_of 解析 理解 详解
在学习Linux驱动的过程中,遇到一个宏叫做container_of。该宏定义在include/linux/kernel.h中,首先来贴出它的代码:/*** container_of - cast a member of a structure out to the containing structure* @ptr: the pointer to the member.* @ty...转载 2011-03-13 11:02:00 · 666 阅读 · 0 评论 -
linux中list.h中函数应用实例
这些代码片段展示如何使用linux内核模块,list,以及hash===================tccounter.c=====================#include <linux/init.h>#include <linux/module.h>#include <linux/moduleparam.h>#include...原创 2010-11-10 15:44:00 · 1912 阅读 · 0 评论 -
c语言如何链接到数据库
#include <mysql/mysql.h>#include <stdio.h> void main(){ MYSQL *mysql; MYSQL_RES *res; MYSQL_ROW row; char *query; ...转载 2011-01-02 19:20:00 · 13266 阅读 · 0 评论 -
转: 函数的线程安全和可重入
<br />摘自:<br />http://liuaigui.blog.sohu.com/86494742.html<br /><br />线程安全的(Thread-Safe):如果一个函数在同一时刻可以被多个线程安全地调用,就称该函数是线程安全的。线程安全函数解决多个线程调用函数时访问共享资源的冲突问题。<br /><br />可重入(Reentrant):函数可以由多于一个线程并发使用,而不必担心数据错误。可重入函数可以在任意时刻被中断,稍后再继续运行,不会丢失数据。可重入性解决函数运行结果的确定性转载 2010-12-14 19:27:00 · 753 阅读 · 0 评论 -
assert函数
assert() 函数用法 assert宏的原型定义在中,其作用是如果它的条件返回错误,则终止程序执行,原型定义: #include void assert( int expression ); assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息, 然后通过调用 abort 来终止程序运行。 请看下面的程序清单badptr.c: #include #include #include int转载 2010-10-02 18:23:00 · 582 阅读 · 0 评论 -
共用体
<br />前几天,tx公司面试题一个问题,共用体中的变量是连续存储在内存空间中的?但是还是答对里,感觉概念还是比较的模糊,毕竟自己很少去用共用体这个结构。<br />共用体:有时需要把不同类型的变量存放到同一段内存单元中,但都是重同一地址开始存放(什么东东,不就是把前面的一个给覆盖里吗,哈哈!),也就是覆盖技术,几个变量互相的壶盖,这种使几个不同的变量共同占用同一段内存的结构,我门称其为共用体。<br /> <br /> <br />共用体变量所占用的内存长度等于最长的成员的长度。<br /> <br /原创 2010-09-27 15:52:00 · 706 阅读 · 0 评论 -
奇怪的strtok函数剖析
strtok函数<br />原型:char *strtok(char *s, char *delim);<br />功能:分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。<br />说明:首次调用时,s指向要分解的字符串,之后再次调用要把s设成NULL。<br />strtok在s中查找包含在delim中的字符并用NULL('/0')来替换,直到找遍整个字符串。<br />返回值:从s开头开始的一个个被分割的串。当没有被分割的串时则返回NULL。<br />所有delim中原创 2010-09-05 20:08:00 · 800 阅读 · 0 评论 -
函数指针与指针函数---应用为函数的回调
<br /><!-- /* Font Definitions */ @font-face {font-family:宋体; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-alt:SimSun; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;}原创 2010-09-03 18:44:00 · 672 阅读 · 0 评论 -
嵌入式linux c 学习笔记9---哈希链表
/** =====================================================================================** Filename: hash.c** Description: hash表* Author: cdutyangshaokun@163.com* =...原创 2010-11-12 09:32:00 · 5116 阅读 · 0 评论