问一个嵌入式下面使用mbstowcs函数的问题

yangzhuoqing 2008-06-02 05:29:40
char str[1024] = "abc123故障短路切换";
wchar_t array[1024]={0};
setlocale(LC_ALL,"zh_CN.GB2312");
/*from chinese to Unicode*/
if((ret=mbstowcs(array, str, strlen(str)))==-1)
{
printf("error\n");
}

这段代码我在linux下面运行就不报error,但是我把程序编译好,拷到一个嵌入式系统里面运行,就一定报error。。。。谁知道这是为什么?

谢谢各位大侠指点。
...全文
228 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
yangzhuoqing 2008-06-03
  • 打赏
  • 举报
回复
另外......

arm-linux-gcc-3.3.2
我就是用的这个交叉编译器。。。
yangzhuoqing 2008-06-03
  • 打赏
  • 举报
回复

赞4楼,Invalid or incomplete multibyte or wide character

报了这个错误。。。。
cceczjxy 2008-06-03
  • 打赏
  • 举报
回复
你使用perror(NULL)看报什么错误,
yangzhuoqing 2008-06-03
  • 打赏
  • 举报
回复
楼上的不好用。
还是一样的情况:我在linux上编译运行都良好,copy到一个带有2.6.8.1 小型linux系统里面运行就报error。。。。
cceczjxy 2008-06-02
  • 打赏
  • 举报
回复
if((ret=mbstowcs(array, str, strlen(str)*2)==-1)
这样看一下
yangzhuoqing 2008-06-02
  • 打赏
  • 举报
回复
自己顶一下。

23,116

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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