buffer.cpp

来自「这个程序能够通过ip来查询实际地址利用的是ip138的数据库」· C++ 代码 · 共 58 行

CPP
58
字号

#include "buffer.h"

buffer* buffer_init()
{
	buffer *buf;
	buf = (buffer *)calloc(sizeof(buffer), 1);

	if(!buf)
		return NULL;

	buf->length = 0;
	buf->ptr = NULL;

	return buf;
}

void buffer_free(buffer *buf)
{
	buf->ptr = NULL;
	free(buf->ptr);
	buf = NULL;
	free(buf);
}

void buffer_addsize(buffer *buf, size_t len)
{
	buf->length += len;
	buf->ptr = (char *)realloc(buf->ptr, buf->length);
	assert(buf->ptr);
}

void buffer_copyend(buffer *buf)
{
	buf->ptr = (char *)realloc(buf->ptr, buf->length + 1);
	*(buf->ptr + buf->length) = '\0';
}

void buffer_copys(buffer *buf, char *src)
{
	size_t src_len, len;

	src_len = strlen(src);
	len = buf->length;
	buffer_addsize(buf, src_len);

	memcpy(buf->ptr + len, src, src_len);
}

void buffer_copysl(buffer *buf, char *src, size_t len)
{
	size_t tlen;
	
	tlen = buf->length;
	buffer_addsize(buf, len);

	memcpy(buf->ptr + tlen, src, len);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?