• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

~纯净~

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

数据转换-位串字节数组

头文件h

点击查看代码
int ByteArr2Bitstr(int ba,int * bs);
int Bitstr2ByteArr(int * bs,int ba);
![image](https://img2023.cnblogs.com/blog/2166633/202305/2166633-20230524091709277-1958877770.png)

主函数

点击查看代码
char HStr = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };

int ByteArr2Bitstr(int ba,int * bs)
{
    for (int i =0 ; i<8; ++i)
    {
        int nTmp = (1 << i);
        bs[7-i] = (( ba & nTmp) == nTmp )? 1 : 0;
    }
}

int Bitstr2ByteArr(int * bs,int ba)
{
    int n = 0;
    for (int i = 0 ; i < 8; ++i)
    {
        n += bs[7-i] * (1 << i);
    }
    *bs = n;
    return n;
}

int main()
{
    int bitList[8] = { 0 };
    int a;
    sscanf("27", "%x", &a);
    ByteArr2Bitstr(a, bitList);
    printf("0x27 be changed to\n");
    for (int i =0 ; i<8; ++i)
        printf("%i",bitList[i]);
    printf("\n");
    int b,n;
    n=Bitstr2ByteArr(bitList,b);
    printf("the data above be changed to\n");
    printf("%x\n",n);
}

![image](https://img2023.cnblogs.com/blog/2166633/202305/2166633-20230524092624203-1732342984.png) ![image](https://img2023.cnblogs.com/blog/2166633/202305/2166633-20230524092701887-1568421216.png)

posted on 2023-05-24 09:04  ~纯净~  阅读(18)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3