读书人

写程序:读出二进制流中指定的几位,该

发布时间: 2012-03-30 17:32:09 作者: rapoo

写程序:读出二进制流中指定的几位
写程序:读出二进制流中指定的几位
为了方便,二进制流放在字符串中,"1122335566"
unsigned int GetBits(wstring str, unsigned int pos, unsigned int len)
{
}

wstring s("1122335566");
cout < < Hex < < GetBits(s, 12, 8) < < endl;//输出23

求达人如何写这个函数

[解决办法]
字符串的分割函数和求子串函数不知行不行
[解决办法]
首先你的题目提法有问题,按照题目的意思,题目要求的并不是二进制流,而是每个数字字符转换为数字后按照4字节大小做整形存储,然后你把这些每个4位拼起来的数字看作是二进制流,位置pos代表这个流里bit位,len为所取的位,帮你些了一个,楼主看下

C/C++ code
 #include <iostream>  using namespace std;unsigned int GetBits(char *p,int pos,int len){    int len1=strlen(p);    char *f=new char[len1];    int n=len/4;    int k=pos/4;    for(int i=0;i<n;i++)    {        f[i]=p[k+i];    }    f[i]='\0';    int num=atoi(f);    delete [] f;    return num;    }int main(){    char *p="1122335566";    cout<<GetBits(p,12,8);    }23Press any key to continue 

读书人网 >C语言

热点推荐