
C
goodspringin
这个作者很懒,什么都没留下…
展开
-
C语言中可变参数的用法——va_list、va_start、va_arg、va_end参数定义
C语言可变参简介 我们在C语言编程中会遇到一些参数个数可变的函数,例如printf()这个函数,它的定义是这样的: int printf( const char* format, ...); 它除了有一个参数format固定以外,后面跟的参数的个数和类型是可变的,例如我们可以有以下不同的调用方法: printf("%d",i);转载 2013-07-14 00:45:50 · 614 阅读 · 0 评论 -
Pthreads并行编程之spin lock与mutex性能对比分析
POSIX threads(简称Pthreads)是在多核平台上进行并行编程的一套常用的API。线程同步(Thread Synchronization)是并行编程中非常重要的通讯手段,其中最典型的应用就是用Pthreads提供的锁机制(lock)来对多个线程之间共 享的临界区(Critical Section)进行保护(另一种常用的同步机制是barrier)。Pthreads提供了多种锁机制:转载 2013-08-10 02:33:33 · 564 阅读 · 0 评论 -
Linux crontab-自动化的任务
在 Linux 中,任务可以被配置在指定的时间段、指定的日期、或系统平均载量低于指定的数量时自动运行。红帽企业 Linux 预配置了对重要系统任务的运行,以便使系统能够时时被更新。譬如,被locate 命令使用的 slocate 数据库每日都被更新。系统管理员可使用自动化的任务来执行定期备份、监控系统、运行定制脚本等等。红帽企业 Linux 随带几个自动化任务的工具:cron、at、和转载 2013-08-10 01:31:08 · 549 阅读 · 0 评论 -
liunx下socket通信
我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠socket?那什么是socket?socket的类型有哪些?还有socket的基本函数,这些都是本文想介绍的。本文的主要内容如下:1、网络中进程之间如何通信?2、Socket是什么?转载 2013-08-09 14:33:45 · 581 阅读 · 0 评论 -
wait和waitpid详解
wait的函数原型是: #include#include pid_t wait(int *status) 进程一旦调用了wait,就立即阻塞自己,由wait自动分析是否当前进程的某个子进程已经退出,如果让它找到了这样一个已经变成僵尸的子进程, wait就会收集这个子进程的信息,并把它彻底销毁后返回;如果没有找到这样一个子进程,wait就会一直阻转载 2013-08-09 00:38:05 · 786 阅读 · 0 评论 -
linux 下(Daemon)守护进程
守护进程(Daemon)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程是一种很有用的进 程。Linux的大多数服务器就是用守护进程实现的。比如,Internet服务器inetd,Web服务器httpd等。同时,守护进程完成许多系统任务。 比如,作业规划进程crond,打印进程lpd等。 守护进程的编程本身并不复杂,复杂的是各转载 2013-08-08 01:31:27 · 785 阅读 · 0 评论 -
标志枚举
枚举分为简单枚举和标志枚举。简单枚举包含的值不用于组合,也不用于按位比较。标志枚举可以使用OR操作进行组合;设计标记枚举时要注意两点:1. 指明FlagsAttribute,以指示可以将枚举作为域(即一组标志)处理; 2. 枚举中各标志的值应该是以2的幂来赋值,即:1、2、4、8、16…标志枚举的作用:举个例子,假如设计一个文件属性,有Hidden、Re转载 2013-08-05 14:57:39 · 217 阅读 · 0 评论 -
C 各个符合的优先级
优先级运算符名称或含义使用形式结合方向说明1[]数组下标数组名[常量表达式]左到右()圆括号(表达式)/函数名(形参表).成员选择(对象)对象.成员名->成员选择(指针)对象指针->成员名2-负号运算符-表达式右到左单目运算符(类型)强制类型转原创 2013-08-02 17:29:52 · 615 阅读 · 0 评论 -
memcpy 和 strcpy 之间的区别
1. memcpy是用于内存复制,可以复制任意数据类型,而strcpy只针对字符串进行复制 2. memcpy的申明是: void *memcpy(void *dest, const void *src, size_t n); 这里dest 和 src 都是使用的空指针,即在实际操作中可以使用不同的指针类型进行处理 strcpy的申明是:c原创 2013-07-11 01:52:18 · 653 阅读 · 0 评论 -
C语言相对于C++不具有的性质
虽然C和C++很像,但是仍有一些不同点,如果不弄清楚,在开发中可能回碰到一定的问题,以下是一些个人总结:一。 C不支持重载 C语言在编译的时候,由于只涉及到函数的名称,因此只要是函数名称相同的函数都认为是相同的,因此在涉及到一些很类似的函数,可以考虑用宏来实现二。 C不支持函数参数的默认值 在C++中,通常为了简洁,可以将函数中最后几个参数设置为默认值,原创 2013-07-03 01:54:11 · 600 阅读 · 0 评论 -
fopen /open,read/write和fread/fwrite区别
fopen /open区别UNIX环境下的C 对二进制流文件的读写有两套班子:1) fopen,fread,fwrite ; 2) open, read, write这里简单的介绍一下他们的区别。1. fopen 系列是标准的C库函数;open系列是 POSIX 定义的,是UNIX系统里的system call。也就是说,fopen系列更具有可移植性;而open系列只能用在 POS转载 2013-07-14 00:08:45 · 937 阅读 · 0 评论 -
C中的static函数小结
C语言中函数可以分为static和非static两种,这两种函数在使用上会有一些不同,具体如下(1)定义的位置static函数可以定义在.h文件以及.c文件中非static函数只能定义在.c文件中(2)作用范围static函数只能作用于本文件中,这里也要看情况,具体如下1. 当static 函数定义在 .c 文件中,那么该static函数就只作用于本文件中,其他文件可以定义原创 2013-09-11 20:17:09 · 1322 阅读 · 0 评论