C语言高级实用技巧

字符串相关

1、字符串拼接

字符串拼接的时候,由于长度问题,可能导致内存溢出。
以下这种方法比较安全。

char test_str[256] = {0};
snprintf(test_str + strlen(test_str), sizeof(test_str) - strlen(test_str), 
"%s", ...);

内存相关

1、free

直接 free 空指针,会导致系统崩溃。

#define SAFE_FREE(x)  \
	do \
	{ \
		if ((x) != NULL) \ 
		{ \
			free((x)); \ 
			(x) = NULL; \
		} \
	} while(0)  /**< < 安全释放动态分配的内存 */

版权声明:本文为vincent3678原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。