当前位置: 技术问答>linux和unix
请教,在64位机AIX系统,使用iconv()函数转换UTF-8到GBK失败,是什么原因呢?如何解决?
来源: 互联网 发布时间:2016-11-05
本文导语: 请教,在64位机AIX系统,使用iconv()函数转换UTF-8到GBK失败,是什么原因呢?如何解决? | perror("iconv"),结果是“invalid wide charactor”。 在调用iconv()时,字长不够,可能传入的参数类型不兼容...
请教,在64位机AIX系统,使用iconv()函数转换UTF-8到GBK失败,是什么原因呢?如何解决?
|
perror("iconv"),结果是“invalid wide charactor”。
在调用iconv()时,字长不够,可能传入的参数类型不兼容。尤其时在64位机上,long的字长是8,int的字长是4;在32位机上long的字长是4,int的字长也是4。在32位机上,int、long是可以通用的,在64位机上,用long的地方,传了int的数据做参数就会报“invalid wide charactor”,字长不够。
检查下传入的参数是否符合。
在调用iconv()时,字长不够,可能传入的参数类型不兼容。尤其时在64位机上,long的字长是8,int的字长是4;在32位机上long的字长是4,int的字长也是4。在32位机上,int、long是可以通用的,在64位机上,用long的地方,传了int的数据做参数就会报“invalid wide charactor”,字长不够。
检查下传入的参数是否符合。
|