hur.cn - 华软网

 热门搜索

字符串与运算 着急!!!!!!!!!!!!!!!

  作者:未知    来源:网络    更新时间:2011/9/7
1.从底层得到一个字符串比如 str1=“000000000abc000520”;
2.有一个模板数据是         str2=“0000110022ff110230”;
现在要对这两个字符串做与(&)运算。咋搞呀。。。想了好久~
---华软 网友回答---
先转成二进制再&
---华软网友回复---
我都没看明白楼主的意思,你的字符串是一个16进制的数字呢?还是一个纯文本。


---华软网友回复---
不管是哪种方式,我感觉都是很容易的。楼主怎么会想N久呢?
---华软网友回复---
C++">
CString str1 = "000000000abc000520";
CString str2 = "0000110022ff110230";
LONG64 lnStr1 = _strtoi64((LPCTSTR)str1, '\0', 16);
LONG64 lnStr2 = _strtoi64((LPCTSTR)str2, '\0', 16);
LONG64 lnRet  = lnStr1 & lnStr2;

---华软网友回复---
先把需求搞懂, 什么是字符串的&操作?
---华软网友回复---
先转成二进制吧,然后再操作,最后转成字符串。

---华软网友回复---
引用 1 楼 gibsonboy 的回复:
先转成二进制再&

是这样的。
str1 是读取得到的数据。是16进制的·
str2 是个模板就是要跟 str1比较,放在配置文件里面 .ini 文件。读取后得到。

然后这两个字符串做&比较。

 主要是格式转换问题。直接& 肯定不行,字符串嘛。  
2楼说的 先转为2进制,我也想到过,具体转换 ,咋整。
因为我用MFC做的,C++里面的一些转换格式 使用不了。一时间 不知道咋搞。

最好给点详细的··
谢谢了
---华软网友回复---
引用 5 楼 yyyyy_3 的回复:
先把需求搞懂, 什么是字符串的&操作?


这个字符串str1其实就是IP包里面的一段数据。
str2是一个模板数据,为了判断str1 是否等于str2,所以 我让他们做&运算,觉得方便嘛。
可是数据转换有个卡壳~~~
---华软网友回复---
引用 4 楼 xiaoc1026 的回复:
C/C++ code

    CString str1 = "000000000abc000520";
    CString str2 = "0000110022ff110230";
    LONG64 lnStr1 = _strtoi64((LPCTSTR)str1, '\0', 16);
    LONG64 lnStr2 = _strtoi64((LPCTSTR)str2, '\0……


==我试下·
---华软网友回复---
为了判断str1 是否等于str2,所以 我让他们做&运算????
判断相等:CString::CompareNoCase
strcmp
std::string ==
---华软网友回复---
引用 10 楼 buyong 的回复:
为了判断str1 是否等于str2,所以 我让他们做&运算????
判断相等:CString::CompareNoCase
strcmp
std::string ==


描述错了,,,
  是领导给的掩码数据就是00000000000000000000FFF0FFFFFF0FFFFFFFFF是 放在ini文件里面的。。。


光想着格式转换,没说清楚!
---华软网友回复---
引用 8 楼 keliang_006 的回复:
引用 5 楼 yyyyy_3 的回复:

先把需求搞懂, 什么是字符串的&操作?


这个字符串str1其实就是IP包里面的一段数据。
str2是一个模板数据,为了判断str1 是否等于str2,所以 我让他们做&运算,觉得方便嘛。
可是数据转换有个卡壳~~~



描述错了,,,
  str2是领导给的掩码数据就是00000000000000000000FFF0FFFFFF0FFFFFFFFF是 放在ini文件里面的。。。

---华软网友回复---
另开一贴!!!!!!!!!!!!!!!!!!!!!!!
结贴给分!      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。