头文件
argc
int main(argc,argv[]):
argc命令行总的参数个数
argv[i]第i个参数
从命令行读取参数时执行命令./test 89 24(此时argc = 3,默认./test算作一个参数,相应的argv[0] = ./test)
getpid
getpid()获取进程识别码,返回值:目前进程的进程识别码,每次返回值不同
strncmp
比较字符串
int strncmp(const char *str1, const char *str2, size_t n)
参数
str1 – 要进行比较的第一个字符串。
str2 – 要进行比较的第二个字符串。
n – 要比较的最大字符数。
返回值
该函数返回值如下:
如果返回值 < 0,则表示 str1 小于 str2。
如果返回值 > 0,则表示 str1 大于 str2。
如果返回值 = 0,则表示 str1 等于 str2。
memset
#include
void *memset(void *str, int c, size_t n)
使用c值填充范围为n的str位置
msgsnd向消息队列发送消息
类型转换函数
atoi
#include <stdlib.h>
将string转化为int:
int atoi(const char *str),该函数返回转换后的长整数,如果没有执行有效的转换(例如中文英文字符,数字+英文只转换数字),则返回零
sprintf(buffer,“%d %s。”,a,ii);
输入直接输入到字符串中,不用转换类型,相当于传了一句话进去
int sprintf( char *buffer, const char *format, [ argument] … );
参数列表
buffer:char型指针,指向将要写入的字符串的缓冲区。
format:格式化字符串。
[argument]…:可选参数,可以是任何类型的数据。赋值
返回值:字符串长度(strlen)
to_string
to_string(value)将数字常量转化为字符串
可变参数
例如print()此类函数,在定义时参数列表中的的参数不完全定义;调用该函数时,可以根据实际情况传入多个参数,且可以成功完成其函数功能。而该函数的参数列表就是可变参数列表。
C 库函数
void *memset(void *str, int c, size_t n) 复制字符 c(一个无符号字符)到参数 str 所指向的字符串的前 n 个字符。
网络字节顺序与本地字节顺序之间的转换函数:
htonl()–“Host to Network Long”
ntohl()–“Network to Host Long”
htons()–“Host to Network Short”
ntohs()–“Network to Host Short”