|
系统是CentOs5.1
字符编码是UTF-8 (终端和源程序都是)
- main()
- {
- int i;
- char a[10];
- strcpy(a,"2b西方1a");
- printf("strlen(a)=%d\n", strlen(a));
- printf("a=%s\n",a );
- }
复制代码
gdb 时,print a 是乱码,只有第一个汉字“西”打印,后面是乱码
在gdb中浏览代码和执行程序时,打印都是正常的。
UTF-8编码一个汉字基本上占3个字节,感觉gdb还是按照2字节处理,所以能打印第一个汉字。
请问如何解决?
有设置gdb使用编码的方式吗?
gdb --version
GNU gdb Red Hat Linux(6.5-25.e15rh)
谢谢! |
|