/************************************************************************/
/* 偶校验函数
/* inData: 输入数据,16进制字符串
/* return: 偶校验后的16进制字符串
/************************************************************************/
CString CTestODDDlg::EvenparityFun(CString inData)
{
 CString strRet = "", _indata = inData;
 int inLen = _indata.GetLength();
 
 if (inLen % 2 != 0)
 {
  return "";
 }
 while(_indata != "")
 {
  int sum = 0;
  CString str = "";
  int data = strtol(_indata.Left(2), NULL, 16);  //将16进制数转为10进制
  int tmp = data >> 1;  //去掉校验位
  for (int i=0; i<7; ++i)  //除了校验位,判断1的个数
  {
   if ((tmp & 0x01) == 1)
   {
    sum = sum+1;
   }
   tmp = tmp >> 1;
  }
  
  if ((sum % 2) == 0)  //1的个数为偶数
  {
   if ((data & 0x01) == 1)//校验位为1
   {
    data = data - 1;
   }
  }
  else  //1的个数为奇数
  {
   if ((data & 0x01) != 1)//校验位为1
   {
    data = data + 1;
   }
  }
  
  str.Format("%02X", data);
  strRet = strRet + str;
  
  _indata = _indata.Mid(2);
 }
 
 return strRet;

}

C++ 对16进制字符串进行偶校验相关推荐

  1. Java中byte与16进制字符串的互相转换

    https://www.cnblogs.com/qinwangchen/p/5418028.html * Convert byte[] to hex string.这里我们可以将byte转换成int, ...

  2. C# 中字符串string和字节数组byte[]的转换,16 进制字符串转 int的方法

    string和byte[]互转 string转byte[] byte[] byteArray = System.Text.Encoding.Default.GetBytes(str); byte[] ...

  3. python2.7下面字节数组(ByteArray)和16进制字符串(HexString)转化

    由于是python2.7 严谨起见,文中不使用字符串的说法,下面只使用str或者unicode的说法 之所以有这个需要,是因为: Hmac-sha1加密在网上计算的结果是HexString,也就是16 ...

  4. qt 中文转十六进制_QT中16进制字符串转汉字

    最经在研究AT指令接受短信,短信是unicode编码,接受后需要根据系统的编码方案进行相关的转码 比如接受到了一串字符4F60597D,它是"你好"的unicode编码,一个uni ...

  5. 字符串转16进制字节数组,字节数组转16进制字符串

    /// <summary>/// 字符串转16进制字节数组/// </summary>/// <param name="hexString">& ...

  6. 16进制字符串转化为10进制数

    同学在MSN CDC电话面试(可惜我在被面试的时候全然没有这么具体的问题了:))中的一个题目:将16进制的字符串转化为10进制数字,例如"1A",则对应26.题目很简单,实现起来也 ...

  7. java 16进制数组 字符串_byte数组转换成16进制字符串和字符数组的方法

    byte数组转换成16进制字符串String: public class CommonUtil { /** * byte数组转换成16进制字符串 * @param src * @return */ p ...

  8. C语言:16进制字符串转int

    文章目录 前言 代码 前言 今天在C语言中 用到16进制字符串转int整型场景,顺便网上搜了一下 发现有网友用了非常复杂的方法,还去判断字母啥的 用到什么累加的,笔者一想 16进制字符串转int类型 ...

  9. iOS 将16进制字符串转换成UIColor

    #pragma mark - 将16进制字符串转换成 UIColor - (UIColor *)generateColorObjectWithHex:(NSString *)hexString { u ...

最新文章

  1. 模糊选择器 js_5个很棒的 React.js 库,值得你亲手试试!
  2. 清华大学高鸣宇:基于Halide调度实现高效能的DNN加速
  3. [笔记]React+Cordova踩坑
  4. common.php中路径,关于ThinkPHP中Common/common.php文件常用函数的功能分析
  5. 会议交流 | IJCKG 2021:Keynotes released!欢迎注册参会
  6. Android 内存管理之优化建议
  7. layui 日期范围选择器_UI设计素材模板|完美日期选择器
  8. 编程十年 (3):初识计算机
  9. Java实现Zip文件解压到指定目录
  10. idea安装阿里巴巴Java开发规范插件
  11. 【bioinfo】bbtools:bbmerge 二代测序reads合并工具了解
  12. 【中医学】10 针灸-1
  13. CAD编辑指南4:新建空白图纸以及添加文字标注
  14. ubuntu快捷键及Linux下一些主要目录
  15. 解决阿里云windows服务器无法连接远程桌面
  16. 【Vuex】模仿京东购物车,用Vuex实现一个购物车功能
  17. 谷歌学术导出参考文献(BibTeX)报错 403
  18. 2016-2017-2 《Java程序设计》课程总结 - 20155214
  19. VC++6.0 MFC COleDateTime 格式化
  20. 如何用OBS直播?关键的步骤能不能简化一下

热门文章

  1. 潘凯:C++对象布局及多态实现的探索(五)
  2. 无规则,指定字符的数据拆分功能
  3. C++不同的数据成员类型
  4. 基于51单片机额温枪非接触红外人体测温仪原理图PCB
  5. 为大家推荐一款干货满满的杂志阅读APP,让你们重新回到从前!
  6. 企业引进CRM的真正价值是什么
  7. 计算机未来发展英文,计算机的未来展看(国外英文资料).doc
  8. 新东方回应员工吐槽歌曲走红:我们初心不变 未来可期
  9. win7 禁止程序自动运行
  10. KNN心脏病数据集分类