关闭

字符串转为为十六进制

251人阅读 评论(0) 收藏 举报
分类:

char ConvertHexChar(char ch)
{
  if((ch>='0')&&(ch<='9'))   
  return   ch-0x30;   
  else   if((ch>='A')&&(ch<='F'))   
  return   ch-'A'+10;   
  else   if((ch>='a')&&(ch<='f'))   
  return   ch-'a'+10;   
  else   return   (-1);  

}


char* str = "我们";
char t[20];
sprintf(t, "%X %X %X %X\n", str[0]&0xff,str[1]&0xff,str[2]&0xff,str[3]&0xff);


#include <stdio.h>
#include <string.h>

int main(void){
    char word[17], outword[33];//17:16+1, 33:16*2+1
    int i, len;

    printf("Intro word:");
    fgets(word, sizeof(word), stdin);
    len = strlen(word);
    if(word[len-1]=='\n')
        word[--len] = '\0';

    for(i = 0; i<len; i++){
        sprintf(outword+i*2, "%02X", word[i]);
    }
    printf("%s\n", outword);
    return 0;
}


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:536871次
    • 积分:7190
    • 等级:
    • 排名:第3226名
    • 原创:32篇
    • 转载:1006篇
    • 译文:1篇
    • 评论:12条
    最新评论