![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C
文章平均质量分 69
你若成风_embed
这个作者很懒,什么都没留下…
展开
-
回调函数的一些理解
回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。 简单的说就是用函数(可看做指针)作为参数进行传递,这样就能将调用者和被调用者分开,且看下例:#include原创 2013-06-01 18:30:28 · 610 阅读 · 0 评论 -
signal函数中的SIGPIPE
在linux下写socket的程序的时候,如果尝试send到一个disconnected socket上,就会让底层抛出一个SIGPIPE信号。这个信号的缺省处理方法是退出进程,大多数时候这都不是我们期望的。即连接建立,若某一端关闭连接,而另一端仍然向它写数据,第一次写数据后会收到RST响应,此后再写数据,内核将向进程发出SIGPIPE信号,通知进程此连接已经断开。而SIGPIPE信号的默认处原创 2014-03-28 11:32:28 · 2555 阅读 · 1 评论 -
Linux中的SIGCHLD及wait,waitpid的使用
在一个进程终止或者停止时,将SIGCHLD信号发送给其父进程。按系统默认将忽略此信号。如果父进程希望被告知其子系统的这种状态,则应捕捉此信号。信号的捕捉函数中通常调用wait(waitpid)函数以取得进程ID和其终止状态 该信号常用于处理僵死(zombie)进程,通过在listen调用后增加如下函数调用:signal(SIGCHLD, sig_chld); //void原创 2014-03-28 15:15:18 · 3279 阅读 · 0 评论 -
c语言中的类型提升问题
下面是引用的一个例子——这个代码是从一个朋友的博文中复制过来的,但是当时这位朋友没有去说明类型提升的问题,而是阐述汇编的过程。/***************************************************************/int main(){int i;unsigned char *p;char *p1;int a[] = {转载 2014-03-27 14:53:36 · 1059 阅读 · 0 评论 -
C与汇编混合编程
汇编的优势: 执行效率高、能够直接控制处理器汇编调用C函数: 将C函数地址赋值给PC指针即可(ldr PC,=main)C调用汇编函数: 将汇编函数声明为全局函数,在C程序中直接调用C内嵌汇编: 格式: 范例:优化:原创 2014-06-16 14:53:15 · 710 阅读 · 0 评论