[CPP]以位流的方式从char数组中读取数据
来源:互联网 发布:淘宝上代接信用卡电话 编辑:程序博客网 时间:2024/05/19 11:44
#include<stdio.h>#include<stdlib.h>/* * 以位流的方式从char数组中读取读取制定位宽的数据 * buf : 以位流的方式储存数据,网络模式存储,big-end * start : 需读取位数据的起始位置,从0开始计数 * length : 需读取的位宽 * 返回值 : 以无符号整型的方式返回读到的数据 * 例如 buf={0x35,0x2e,0xf8,0x53},start=6,length=6,则返回0x12 */int BitsToUnsigned(const char* buf,int start,int length){if(length>((int)sizeof(int))*8) return -1;int t0=start/8;int t1=start%8;int ret=buf[0]&0xFF;if(t1!=0) ret=((ret<<t1)&0xFF)>>t1;if(length<(8-t1)) ret >>= ((8-t1)-length);else{length -= (8-t1);while(length>=8){t0++;ret = (ret<<8) | (buf[t0]&0xFF);length -= 8;}if(length>0){ret <<= length;t1 = buf[t0+1]&0xFF;t1 >>= (8-length);ret |= t1;}}return ret;}int main(){char buf[]={0x35,0x2E,0xF8,0x53};printf("%X\n",BitsToUnsigned(buf,6,6));printf("%X\n",BitsToUnsigned(buf,2,2));printf("%X\n",BitsToUnsigned(buf,0,32));return 0;}
0 0
- [CPP]以位流的方式从char数组中读取数据
- numpy中以文本的方式存储以及读取数据
- PHP把数组写进csv,和从csv文件以数组的形式读取数据
- WPF——图片的预览,以流的方式将图片保存在数据库中,再以流的方式从数据库中读取显示图片
- WPF——图片的预览,以流的方式将图片保存在数据库中,再以流的方式从数据库中读取显示图片
- Android中从服务器端读取数据的方式
- PHP以行的方式读取文件内容放入数组中
- 从字节数组中读取整型(最大四位)
- java从控制台读取数据的方式
- 利用GDAL读取图片,将数据以BIP的方式存在内存中。
- android以流的方式读取文件
- java以流的方式读取参数
- java缓冲字节流的复制数据,数据以数组读取、写入,效率更高
- 以XML的方式读取Excel文件数据
- 从输入流中获取数据并以字节数组返回
- 从输入流中获取数据并以字节数组返回
- 从输入流中获取数据并以字节数组返回
- 从三个关联的数据表中按照分类的方式读取数据
- nxyl4y tqx40
- hdu1799 循环多少次?
- spmh9x qgg41
- MFC 多线程 用户界面线程创建
- vrup1r gle48
- [CPP]以位流的方式从char数组中读取数据
- kmp算法的实现
- hdu 1148 Rock-Paper-Scissors Tournament
- hdu 4901 The Romantic Hero 2014 Multi-University Training Contest 4 E
- hdu 2563 统计问题 递推 (2 *-1,1 * -2)
- hdu 1431
- 取(2堆)石子游戏(威佐夫博弈)
- 分页pager-taglib使用指南
- HDU 1732——Push Box(BFS)