.|strdup的作用是什么?有什么注意事项?
.|作用:strdup用于将串拷贝到新建的内存处
注意事项:不用的时候,需要调用free释放该段内存
其实和malloc差不多,都是分配一段内存,不过区别是strdup另外还需要将字符串复制到新内存空间中
strdup在此处的目的是该struct真正的用于该字符串,而不是其他地方也引用,防止被其他地方修改或者释放
.+
.|如何实现断言?assert
.|
struct Person person = malloc(sizeof(struct Person));
assert(person!=null);
.+
.|c中如何获取字符串的长度?
.|头文件:string.h
用法:size_t strlen(const char str)
注意:获取的是真实的字符串长度,不包括最后的结束符\0
.+
.|htonl函数作用是什么?
.|host to netwok long 本地字节序(long类型)转为网络字节序
这个关系到大端和小端,具体待续。
.+
.|htons函数作用是什么?
.|host to network short,本地字节序(short类型)转为网络字节序
.+
.|函数作用:strcmp(str1,str2)
.|比较两个字符串, 若str1=str2,则返回零;若str1
.+
.|函数作用:stricmp(str1,str2)(windows下)
.|比较字符串,不区分大小写。功能和strcasecmp相同
若str1=str2,则返回零;若str1
.+
.|函数作用:strcasecmp(str1,str2)(linux下)
忽略大小写,比较字符串
若str1=str2,则返回零;若str1
.+
.|函数作用:malloc
.|在堆上分配一块内存空间,需要显式的释放
SWITCH_GLOBAL_dirs.base_dir = (char ) malloc(strlen(local_argv[x]) + 1);
.+
.|函数作用:switch_snprintf
.|用于将多个字符串按照指定格式进行拼接
switch_snprintf(path, sizeof(path), “%s%s%s”, SWITCH_GLOBAL_dirs.run_dir, SWITCH_PATH_SEPARATOR, pfile);
.+
.|函数作用:atoi()
.|函数用来将字符串转换成整数(int)
.+
.|函数作用:strdup
.|复制一个新串,返回的指针指向该串
.+
.|函数作用: char strrchr(const char str, int c)
.|查找一个字符串c在另一个字符串中末次出现的位置,并返回字符所在位置的指针,没找到的话,返回空指针;
.+
.|函数作用: char strchr(const char str, int c)
.|查找一个字符串c在另一个字符串中第一次出现的位置,并返回字符所在位置的指针,没找到的话,返回空指针;
.+
.|函数作用:char strstr(const char haystack, const char needle)
在字符串 haystack 中查找第一次出现字符串 needle 的位置,不包含终止符 ‘\0’,找到则返回位置指针,没有返回空指针
.+
.|函数作用:void memset(void s, int ch, size_t n);
.|将s中当前位置后面的n个字节 (typedef unsigned int size_t )用 ch 替换并返回 s 。