搜索
查看: 580|回复: 1
打印 上一主题 下一主题

编码问题示例代码

[复制链接]
跳转到指定楼层
楼主
发表于 2014-8-31 17:50:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 rosynirvana 于 2014-9-29 22:29 编辑

1. 处理code page 936

双字节的代码第一位一定大于等于0x81,注意char可能是有符号的也可能是无符号的,所以要做类型转换
  1. #include <stdio.h>
  2. #include <stdlib.h>

  3. int main()
  4. {
  5.     int i;
  6.     char poem[100] = "34 白日依山尽";
  7.    
  8.     for(i=0; poem[i]; ++i){
  9.         if((unsigned char)poem[i] < 0x81){
  10.             putchar(poem[i]);
  11.             putchar('\n');
  12.         }
  13.         else{
  14.             putchar(poem[i]);
  15.             putchar(poem[++i]);
  16.             putchar('\n');
  17.         }
  18.     }
  19.     system("pause");
  20.     return 0;
  21. }
复制代码
沙发
发表于 2014-9-1 12:08:48 | 只看该作者
继续啊         
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表