随笔分类 - c 基本操作
三、内存管理
摘要:1、calloc 表头文件 #include <stdlib.h> 定义函数 void *calloc(size_t nmemb,size_t size); 函数说明 calloc()用来配置nmemb 个相邻的内存单位,每一单位的大小为size,并返回指向第一个元素的指针。这和使用下列的方式效果相
阅读全文
二、字符串转换
摘要:1、atof 表头文件 #include <stdlib.h> 定义函数 double atof(const char* nptr) 函数说明 atof() 会扫描nptr字符串,跳过前面的空格字符,知道遇上数字或正负号才开始做转换,而再遇到非数字或字符串结束时('\0')才结束转换,并将结果返回。
阅读全文
一、字符测试
摘要:1、isalnum 表头文件 #include<ctype.h> 定义函数 int isalnum(int c) 函数说明 检查参数c是否为英文字母或阿拉伯数字,在标准c中相当于使用isalpha(c) || isdigit(c) 返回值 若参数c为字符或数字,则返回TRUE,否则返回NULL 2、
阅读全文
linux c函数参考手册
摘要:一、字符测试 isalnum(测试字符是否为英文字母或数字) isalpha(测试字符是否为英文字母) isascii(测试字符是否为ascii码字符) isblank(测试字符是否为空格字符) iscntrl(测试字符是否为ascii码的控制字符) isdigit(测试字符是否为阿拉伯数字) is
阅读全文
linux do{} while(0)
摘要:do{}while(0) 在linux中,经常会看到do{}while(0)这样的语句,许多人开始都会疑惑,认为do{}while(0)毫无意义,因为它只会执行一次,加不加do{}while(0)效果是一样的,其实do{}while(0) 的用法主要在于宏定义中。 这里用一个简单的宏来演示: #de
阅读全文
linux c 输出信息到console
摘要:static void console_log(const char *format, ...) { static FILE *fpConsole; if (fpConsole == NULL) { fpConsole = fopen("/dev/console", "w"); } if (fpConsole != NULL) { char aMsg[3584...
阅读全文
linux c 获取console 结果
摘要:getLine(char *line, const char *cmd) { FILE *pf = popen(cmd, "r"); if (pf == NULL) { return -1; } fgets(line, 25, pf); if (strlen(line) > 0) { if (line[strlen(line) - 1] == '\n') ...
阅读全文
linux c 检测ip变化
摘要:#include #include #include #include #include #include #include #include int main() { int inet_sock; struct ifreq ifr; char addr[16]={0}; char *getaddr= NULL; ...
阅读全文
linux 调试技巧
摘要:1、添加log printf("\033[1;43m %s,%s,%d\033[0m\n",__FILE__,__FUNCTION__,__LINE__); FILE:文件名 FUNCTION:函数名 LINE:代码所在文件行数
阅读全文
netlink
摘要:http://blog.csdn.net/luckyapple1028/article/details/50839395 http://blog.csdn.net/luckyapple1028/article/details/50936563 https://www.ibm.com/develope
阅读全文
相关博客
摘要:c指针:http://www.cnblogs.com/lulipro/p/7460206.html libcurl教程 :http://blog.csdn.net/qq_16209077/article/details/51974260?locationNum=1&fps=1
阅读全文
读写锁
摘要:概述: 在一些程序中存在读者写者问题,也就是说,对某些资源的访问会 存在两种可能的情况,一种是访问必须是排它行的,就是独占的意思,这称作写操作; 另一种情况就是访问方式可以是共享的,就是说可以有多个线程同时去访问某个资源,这种就称作读操作。这个问题模型是从对文件的读写操作中引申出来的。 读写锁比起m
阅读全文
perror strerror使用方法
摘要:1. 简介 很多系统函数在错误返回时将错误原因记录在libc定义的全局变量errno中,每种错误原因对应一个错误码。 errno在头文件errno.h中声明,是一个整型变量,所有错误码都是正整数。然后我们可以用perror或 strerror函数将errno解释成字符串 perror #includ
阅读全文
posix信号量与互斥锁
摘要:1、简介 POSIX信号量是一个sem_t 类型的变量,但POSIX 有两种信号量的实现机制:无名信号量和命名信号量。无名信号量可以用在共享内存的情况下, 比如实现进程中各个线程之间的互斥和同步。命名信号量通常用于不共享内存的情况下,比如不共享内存的进程之间。 1.1POSIX 无名信号量 在使用信
阅读全文
线程基本操作(一)
摘要:一、简介 使用线程函数库,需要引入头文件<pthread.h> 链接这些线程函数库时要使用编译命令的“ -lpthread” 选项 二、函数介绍 1、创建一个新的线程 原型 int pthread_create(pthread_t *thread, const pthread_attr_t *att
阅读全文
system v共享内存与信号量综合
摘要:ipc.h ipc.c shmfifo.h shmfifo.c shmfifo_send.c shmfifo_recv.c shmfifo_free.c Makefile
阅读全文
共享内存基本操作
摘要:共享内存使用的函数介绍 1. shmget函数 该函数用来创建共享内存: int shmget(key_t key, size_t size, int shmflg); 参数: key : 和信号量一样,程序需要提供一个参数key, 它有效地为共享内存段命名。 有一个特殊的键值IPC_PRIVATE
阅读全文