C语言中获取中文字符的十六进制编码问题

ff4569 2013-01-06 10:33:39
最近在C语言程序中需要将中文字符转化为十六进制编码,比如"中"对应的十六进制编码是D6D0,其它的编程语言一般都有相应的处理函数,但是在C里面一直没找到该如何实现该需求。
...全文
343 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2013-01-07
  • 打赏
  • 举报
回复
仅供参考:
#include <stdio.h>
#include <string.h>
#include <conio.h>
FILE *fi,*fo;
unsigned int n;
int c;
//-------------------------------------------------------
void main(int argc,char *argv[])
{
    if (argc<3) {
        cprintf("Bin2Hex srcfile desfile");
        return;
    }
    if ((fi=fopen(argv[1],"rb"))==NULL) {
        cprintf("Can not find file %s",argv[1]);
        return;
    }
    if ((fo=fopen(argv[2],"w"))==NULL) {
        fclose(fi);
        cprintf("Can not create file %s",argv[2]);
        return;
    }
    n=0;
    while (1) {
        c=fgetc(fi);
        if (EOF==c) break;
        n++;
        if (1==n)        fprintf(fo,  "0x%02X",c);
        else {
            if (1==n%16) fprintf(fo,"\n0x%02X",c);
            else         fprintf(fo, ",0x%02X",c);
        }
    }
    fcloseall();
    cprintf("OK to Bin2Hex %u bytes.",n);
}
赵4老师 2013-01-07
  • 打赏
  • 举报
回复
char hz[3]="中";
char bt[2];
char hx[5];
memcpy(bt,hz,2);
sprintf(hx,"%02X%02X",(unsigned char)hz[0],(unsigned char)hz[1]);
printf("%02X%02X\n",(unsigned char)hz[0],(unsigned char)hz[1]);//D6D0
printf("%02X%02X\n",(unsigned char)bt[0],(unsigned char)bt[1]);//D6D0
printf("%s\n",hx);//D6D0
ForestDB 2013-01-07
  • 打赏
  • 举报
回复
中 GBK:D6D0 Unicode:4E2D BIG5:A4A4 GB2312:5448 UTF8:E4 B8 AD LZ先理解编码,再去看iconv。
东大坡居士 2013-01-06
  • 打赏
  • 举报
回复
看其它语言咋实现的,自个写吧
本资源系统地介绍了C语言转义字符的原理和应用,包括转义字符的概念、分类、表示、作用等内容,以及如何用转义字符表示ASCII码、控制字符、特殊字符等。本资源适合C语言基础学习者和考生使用,帮助他们深入理解和掌握C语言转义字符的原理和应用,提高C语言的能力和水平。 提供了多种字符编码和转换的功能,如输入和输出字符的实体、ASCII码、八进制转义字符十六进制转义字符等,以及支持多个字符的批量转换和显示。本资源适合C语言编码和转换的学习者和工程师使用,帮助他们通过Web界面来进行C语言转义字符编码和转换,提高字符的知识和水平 从基础到进阶,逐步讲解了C语言转义字符的方法、技术和代码,以及C语言转义字符的实际输出和效果。本资源利用多个实例,如打印文件路径、输出控制字符、显示特殊字符等,展示了C语言转义字符的用法和作用,以及相关的概念和知识,如ASCII码、字符集、字符串等。本资源适合C语言教学和学习的教师和学生使用,帮助他们通过视频和代码来观看和学习C语言转义字符的教学和输出,提高编程的兴趣和能力。 从基础到进阶,逐步讲解了C语言转义字符的方法、技术和代码,以及C语言转义字符的实际输出和效果

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧