字符串转二进制 CString ss="0x6689,0x4aa1,0x4852";以“,”分隔,怎么样转啊? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 先分割然后用strtolchar * s = "0xa";int l = strtol(s,0,16);再转为二进制的字符串:char sz[100];itoa(l,sz,2);printf("%s",sz); 什么编码?只是帮你转化为二进制的 CString s="0x6689,0x4aa1,0x4852"; char sz[10]={0}; int nState = 0; int nIndex = -1; for(int i=0;i<s.GetLength();++i) { switch(s[i]) { case '0': nState = 1; break; case 'x': if(nState == 1) nState = 2; else nState = 0; break; default: if(!((s[i]>='a'&&s[i]<='z') ||(s[i]>='A'&&s[i]<='Z') ||(s[i]>='0'&&s[i]<='9'))) break; if(nState==2) { int nStart=(++nIndex)/2; sz[nStart]<<=4; if(s[i]>='a') sz[nStart]|=s[i]-'a'+10; else if(s[i]>='A') sz[nStart]|=s[i]-'A'+10; else sz[nStart]|=s[i]-'0'; } } } MessageBox(sz); 先用find找到‘,’把字符串分离出来,用数组保存,然后直接格式化一下,sscanf phoenix96_2000的思路,不过不一定快,:p CString ss="0x6689,0x4aa1,0x4852"; int iIndex = 0; CString sf; while(AfxExtractSubString(sf, ss, iIndex++, ',')) { int l = strtol(sf,0,16); //MessageBox(sf); } 关于MDI的框架风格 刷新问题 请问用VC或C++开发的IE中用的OCX插件,是否能用在windows的胖客户端程序中,比如用在C#的程序中 VC 小问题 高手们请问如何知道一个点是否在一个扇形内呢? 请问theApp和(CMyApp*)AfxGetApp()有什么联系和区别? 在线求教:在View中,怎样一次除去CDC画的视图中的所有图形? 在CString类里,怎样将字符串拆分为单个字符? 如何用ATL做ToolBar不是用在ie浏览器上的那种 VC 中的SOCK 超难的问题,帮忙看看, 当同时运行了2个程序,我想在他们之间互相切换焦点.(在线等待)
char * s = "0xa";
int l = strtol(s,0,16);再转为二进制的字符串:
char sz[100];
itoa(l,sz,2);
printf("%s",sz);
char sz[10]={0};
int nState = 0;
int nIndex = -1;
for(int i=0;i<s.GetLength();++i)
{
switch(s[i])
{
case '0':
nState = 1;
break;
case 'x':
if(nState == 1)
nState = 2;
else
nState = 0;
break;
default:
if(!((s[i]>='a'&&s[i]<='z')
||(s[i]>='A'&&s[i]<='Z')
||(s[i]>='0'&&s[i]<='9')))
break;
if(nState==2)
{
int nStart=(++nIndex)/2;
sz[nStart]<<=4;
if(s[i]>='a')
sz[nStart]|=s[i]-'a'+10;
else if(s[i]>='A')
sz[nStart]|=s[i]-'A'+10;
else
sz[nStart]|=s[i]-'0';
}
}
}
MessageBox(sz);
CString ss="0x6689,0x4aa1,0x4852";
int iIndex = 0;
CString sf;
while(AfxExtractSubString(sf, ss, iIndex++, ','))
{
int l = strtol(sf,0,16);
//MessageBox(sf);
}