20170720

来源:互联网 发布:用友软件软件财务软件 编辑:程序博客网 时间:2024/06/08 14:22

发现自己不懂的地方还是太多

1.unsigned char recv_buf[38];//本身就是一个指针变量
字符数组名是一个常量指针,也就是const char*,所以recv_buf本身就是一个指针。
2。函数memcpy:
函数原型:void *memcpy(void *dest, const void *src, size_t n);
功能:从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中
例:memcpy(&len,recv_buf,4);//将recv_buf中从起始位置前4位(也就是表示报文总长度的那四位)拷贝到len中,这里的定义为:int len;&是取地址符
解释:recv_buf的定义为:unsigned char recv_buf[30];一个char占1个字节,len是int类型,占用4个字节,//len是int类型,一个int包含4个字节,一个char包含一个字节,如果recv_buf中的四位是00 00 00 10,那么len中也是00 00 00 10,由于len是int,所以转为十进制是16.
3。unsigned char* pic_buf=new unsigned char[len];//new分配内存,len表示将要读的总长度
用new来定义字符数组,不会出现溢出的情况。
4。unsigned char Nchar=all_in&0xff;//只取all_in最后一个字节,Nchar是我们计算出的校验位
&0xff的解释:0(零)xFF是16进制的255,也就是二进制的 1111,1111,表示取低八位的意思
5。FILE* mfile=fopen("test.jpg","wb");//创建一个test.jpg
解释:
1.函数简介
函数功能:打开一个文件
函数原型:FILE * fopen(const char * path,const char * mode);
相关函数:open,fclose,fopen_s[1],_wfopen
所需库:

原创粉丝点击