我不知道有什么好的算法,只能是硬来吧:char cTemp;
CString strBin;
strBin.Empty();
for (int i=0; i++; i<2){
cTemp = a[i];
for(int j=0; j++; j<8){
if(0x80 & cTemp) strBin += "1";
else strBin += "0";
cTemp <<= 1;
}
}
CString strBin;
strBin.Empty();
for (int i=0; i++; i<2){
cTemp = a[i];
for(int j=0; j++; j<8){
if(0x80 & cTemp) strBin += "1";
else strBin += "0";
cTemp <<= 1;
}
}
解决方案 »
- 关于删除文件的疑难,请指教
- 按钮自绘时,文字无法实现透明~
- ADO访问数据库的问题,怎么知道一条记录有几个字段?
- MicroSoft Web Brower 控件如何动态改变窗口大小?
- Linux下的CString怎么用
- 判断一个pConnection是否处于连接状态问题
- 多个对话框同时初始化出错,哪位大侠来帮忙看看啊
- 请教在完成端口程序中正确回收资源的方法
- 请问MFC或C++里有没有处理二进制的类?解决完再开号给多20分``
- 小弟我昨天到泉州一些软件公司找兼职工作,没找到。请CSDN的朋友帮忙找找,待遇方面不用很多,主要是学习。我想找c,c++编程方面,就用vc+
- 击键事件中,如何通过lParam得到合适的char??请给源代码!
- 送分问题,不要错过!记事本最多能打开多大的文本文件???
这个算法还可以吗,最主要得是我这个东西,写得是一个接口程序,pb当中要调用一个读写程序,其中就有关于字符串得问题,你这个算法不错,
还有一个问题是一个逆过程,怎么样把一串字符串以八个为单位就是把上面得,东西还原成为
a[0]=0x34,a[1]=0xaf,能够有通用一点得算法吗?
还有假设定义了这么一个unsigned char szbuffer[2]这种结构呢,这个算法就有点问题了吗,请教你可以吗
BYTE *pBin; //指向二进制字符串首址
int nBitCnt = 0; //位计数
int nCharCnt = 0; //字符计数
szbuffer[0] = 0;
while(*pBin){
if(*pBin == '1') szbuffer[nCharCnt]++ ;
pBin++;
nBitCnt ++;
if(nBitCnt == 8){
nBitCnt = 0;
nCharCnt ++;
szbuffer[nCharCnt]=0
}
else szbuffer[nCharCnt] <<= 1;
}
这里我没有管二进制字符个数和szbuffer字符个数是否匹配的问题
你能够给我一些这个方面的资料吗
CString strBin;
strBin.Empty();
for (int i=0; i++; i<2){
cTemp = a[i];
for(int j=0; j++; j<8){
if(0x80 & cTemp) strBin += "1";//这里的话两个数字求与当为true的时候加一,这里好象没有体现出来呀
else strBin += "0";
cTemp <<= 1;
}
}
我对你这个程序提个意见以上有我的注释在 ,我认为你有不妥的地方,
char temp2[10];char *MyStr;_itoa(a[0],temp1,2);
_itoa(a[1],temp2,2);strcat(temp1,temp2);
MyStr=temp1;
if(0x80 & cTemp) strBin += "1";//这里的话两个数字求与当为true的时候加一,这里好象没有体现出来呀
你是什么意思?if(0x80 & cTemp) 和 if(0x80 & cTemp == TRUE)是等价的呀
搜索“串口”,能出来8页