c
kandyer
程序员.
展开
-
c语言sizeof求结构体的大小
运算符sizeof可以计算出给定类型的大小,对于32位系统来说,sizeof(char) = 1; sizeof(int) = 4。基本数据类型的大小很好计算,我们来看一下如何计算构造数据类型的大小。C语言中的构造数据类型有三种:数组、结构体和共用体。数组是相同类型的元素的集合,只要会计算单个元素的大小,整个数组所占空间等于基础元素大小乘上元素的个数。结构体中的成员可以是不同的数据类型转载 2013-04-08 20:38:28 · 7728 阅读 · 1 评论 -
c语言可变参数的例子
C函数要在程序中用到以下这些宏:void va_start( va_list arg_ptr, prev_param ); type va_arg( va_list arg_ptr, type ); void va_end( va_list arg_ptr ); va_list:用来保存宏va_start、va_arg和va_end所需信息的一种类型。为了访问变长参转载 2013-04-08 16:11:35 · 703 阅读 · 0 评论 -
c语言sizeof求结构体的大小注意事项
以下3个结构体的大小是不同的:struct sdshdr { // buf 已占用长度 int len; // buf 剩余可用长度 int free; // 实际保存字符串数据的地方 char buf[3];};12struct sdshdr { //转载 2013-04-08 20:48:56 · 735 阅读 · 0 评论 -
malloc与cmalloc的区别
函数malloc()和calloc()都可以用来动态分配内存空间,但两者稍有区别。malloc()函数有一个参数,即要分配的内存空间的大小:void *malloc(size_t size);calloc()函数有两个参数,分别为元素的数目和每个元素的大小,这两个参数的乘积就是要分配的内存空间的大小。void *calloc(size_t numElements,s转载 2013-04-09 10:45:40 · 1956 阅读 · 0 评论 -
linux发送信号函数之-alarm()
alarm函数只能发送信号给当前进程,只能发送SIGALRM信号raise函数也是发送给自身进程,但是可以指定信号,而alarm函数只能发送SIGALRM信号/* ============================================================================ Name : linux_c.c Author :原创 2013-05-05 22:31:54 · 478 阅读 · 0 评论 -
linux信号发送函数之sleep
sleep函数与pause函数差不多, 在新信号到来时都会被中断, 唯一的差别在于sleep在睡眠了指定时间后也会被唤醒。/* ============================================================================ Name : linux_c.c Author : vince Version原创 2013-05-05 23:34:34 · 486 阅读 · 0 评论 -
linux信号发送函数之pause模拟睡眠
pause()可以挂起当前进程,直到有新信号到达,因此可以用pause()和alarm实现sleep的功能/* ============================================================================ Name : linux_c.c Author : vince Version : Copy原创 2013-05-05 23:22:14 · 499 阅读 · 0 评论 -
linux信号发送函数总结
信号的发送有硬件方式和软件方式,硬件方式比如键盘操作引起的信号发送,软件方式即是以下几个函数:1.函数有以下几个:alarm, kill, pause, sleep, abort2.除了kill可以发送信号给其它进程,其余函数都是发送信号到当前进程.3.pause和sleep性质是一样的,都是暂停当前进程.4.abort也可以用kill来实现相同的功能.原创 2013-05-05 23:37:46 · 452 阅读 · 0 评论 -
linux信号发送函数之kill
kill可以将信号发送给指定pid的进程:普通用户可以将信号发送给该用户下的任意一个进程。root用户可以将信号发送给任意进程./* ============================================================================ Name : linux_c.c Author : vince Version原创 2013-05-05 23:13:31 · 504 阅读 · 0 评论