iconv.h用于字符集转码

#include 
#include "stdio.h"
#include "string.h"
#include "iconv.h"
using namespace std;
int main()
{
 iconv_t cd=iconv_open("GBK","UTF-8");//产生一个转码句柄,从utf8转到gbk
 char text[]="hello 大家好";//待转文本
 const char *ins=text;//待转文本的指针,用于iconv参数兼容。
 char outtext[200];//申请200个字符串的输出空间
 char *outs=outtext;//空间的指针
 
 size_t il,ol=100;//待转文本长度和输出文本长度,字节数表示
 il=strlen(text);//得出待转文本长度,可能有问题,待测试
 
 printf("in=>%s\n",ins);
 iconv(cd,&ins, &il, &outs, &ol);//该函数递归执行,所有参数的内存都在外部,il,outs,ol的值都在函数执行输入后变化.
 //
 
 cout << "output=>"<"<


你可能感兴趣的:(Linux,C++)