如题.谢谢.
解决方案 »
- 创建位图失败,求高手解答,急需,谢谢
- 江湖救急,求《矢量图形系统开发与编程》电子书或源码。急!急!急!救!救!救
- 谁有VC的语音聊天程序源码
- FreeLibrary()/AfxFreeLibrary()把dll怎么了?
- [请教]如何获取别人网站上asp页面用Post方式传递的参数啊?
- 关于消息映射
- 关于L的使用
- 怎样读取股票k线数据,如000001.dat(深发展)
- 用ADSL的朋友一定要进来
- 解释性语言(脚本语言,标识性语言)可以很多,而且程序员可以自定义语言格式和自己写解析器。但编译性语言过多就是软件的祸患,越多祸患越大!
- 如何能把读到的字符转成十六进制?
- 串口问题!向串口发指令:#55H,S,100,#AAH(其中#55H十六进制值数据头,S是指令,100是指令的参数,#AAH数据尾)!!
十六进制字串转为值:
long strtol( const char *nptr, char **endptr, int base ); 其中base=16
值转为十六进制字串
char *_itoa( int value, char *string, int radix );其中radix=16
或
sprintf(buff,"%x",val);
CString str16("FF");
char chs10[128];
int iData;
sscanf(str16.GetBuffer(m_1.GetLength()),"%x",&iData);
sprintf(chs10,"%d",iData);
{
ASSERT(2==str.GetLength());
unsigned char ch[2];
unsigned char retval;
strcpy((char*)ch,str);
if(ch[0]>='0'&&ch[0]<='9')
retval=(ch[0]-'0')*16;
else if(ch[0]>='A'&&ch[0]<='F')
retval=(ch[0]-'A'+10)*16; if(ch[1]>='0'&&ch[1]<='9')
retval+=ch[1]-'0';
else if(ch[1]>='A'&&ch[1]<='F')
retval+=ch[1]-'A'+10;
char tempch[10];
itoa(retval,tempch,10);
CString retstr;
retstr.Format("%c",retval);
return retstr;
}
则输出"格尔木", 如何做到.
char chs10[128];int iData1,iData2,iData3,iData4,iData5,iData6;sscanf(str16.GetBuffer(m_1.GetLength()),"%2x%2x%2x%2x%2x%2x",&iData1,&iData2,&iData3,&iData4,&iData5,&iData6);sprintf(chs10,"%c%c%c%c%c%c",iData1,iData2,iData3,iData4,iData5,iData6);
帮你写个吧,按我看来已经不能再快了
用法
char s[]="B8F1B6FBC4BE0000";
int i=MyHex(s);
MessageBox(0,s,0,MB_OK);
试试吧int MyHex(char* s)
{
byte a,b;
int i;
char* p=s;
for(i=0;*s!=0;i++)
{
a=*s;
if(a>0x29 && a<0x3A)//'0'-'9'
a-=0x30;
else if(a>0x40 && a<0x47)//'A'-'F'
a-=0x37;
else if(a>0x60 && a<0x67)//'a'-'f'
a-=0x57;
else //error
break;
s++;
b=*s;
if(b>0x29 && b<0x3A)//'0'-'9'
b-=0x30;
else if(b>0x40 && b<0x47)//'A'-'F'
b-=0x37;
else if(b>0x60 && b<0x67)//'a'-'f'
b-=0x57;
else //error
break;
p[i]=(a<<4) | b;
s++;
}
p[i]=0;
return i;
}
char r[MAX_LEN]={0};
for(int i=0;i<strlen(s);i+=2)
sscanf(s+i,"%2X",r+i/2);
sscanf( input, "%x", &n ) ;
sprintf( output, "%d", n ) ;
如果字串超长,在转换前后用GetTickCount()记一下时间,就知道sscanf之类的格式化字串函数有多么慢了;