⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test_bitstream.c

📁 二维码QR的linux平台下的编码源代码
💻 C
字号:
#include <stdio.h>#include <string.h>#include "common.h"#include "../bitstream.h"void test_num(void){	BitStream *bstream;	unsigned int data = 0x13579bdf;	char correct[] = "0010011010101111001101111011111";	testStart("New from num");	bstream = BitStream_new();	BitStream_appendNum(bstream, 31, data);	testEnd(strncmp(correct, bstream->data, 31));	BitStream_free(bstream);}void test_bytes(void){	BitStream *bstream;	unsigned char data[1] = {0x3a};	char correct[] = "00111010";	testStart("New from bytes");	bstream = BitStream_new();	BitStream_appendBytes(bstream, 1, data);	testEnd(strncmp(correct, bstream->data, 8));	BitStream_free(bstream);}void test_appendBytes(void){	BitStream *bstream;	unsigned char data[8];	char correct[] = "10001010111111111111111100010010001101000101011001111000";	testStart("Append Bytes");	bstream = BitStream_new();	data[0] = 0x8a;	BitStream_appendBytes(bstream,  1, data);	data[0] = 0xff;	data[1] = 0xff;	BitStream_appendBytes(bstream, 2, data);	data[0] = 0x12;	data[1] = 0x34;	data[2] = 0x56;	data[3] = 0x78;	BitStream_appendBytes(bstream, 4, data);	testEnd(strncmp(correct, bstream->data, 64));	BitStream_free(bstream);}void test_toByte(void){	BitStream *bstream;	unsigned char correct[] = {		0x8a, 0xff, 0xff, 0x12, 0x34, 0x56, 0x78	};	unsigned char *result;	testStart("Convert to  byte array");	bstream = BitStream_new();	BitStream_appendBytes(bstream, 1, &correct[0]);	BitStream_appendBytes(bstream, 2, &correct[1]);	BitStream_appendBytes(bstream, 4, &correct[3]);	result = BitStream_toByte(bstream);	testEnd(memcmp(correct, result, 7));	BitStream_free(bstream);	free(result);}int main(int argc, char **argv){	test_num();	test_bytes();	test_appendBytes();	test_toByte();	report();	return 0;}

⌨️ 快捷键说明

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