1.检查代码的工具PC-lint。
2.linux 下使用时,使用gpd来调试,可以单独调用函数,比较方便。
3.关于字库的基本原理认识。(请谨慎参考,这里说的还要校正,欢迎指正,谢谢。)
1)基本概念
字库:即具有一定顺序的字模库,如 “中”字,在16位的字库中,为长宽各为16*16(可能还有24位的、或长宽不一致的)的点阵。 可以将定义一个二维数组保存一个字模信息。
GDB2312:中文字符集,如一些系统里“中” 字使用两个字节,值为 [0xD6][0xD0]来表示。
显示与输入:当Linux系统中的某个终端编码设为UTF8字符集、或者GB2312字符集(终端菜单栏有设置)。我们通过标准输入“中”时,我们的输入缓存中得到的数据是不一样的。
不管使用那一种,我们用户看到的只是“中”字,这是由于字符集编码不同,“中”字对应的字符编码也不同。
例如:我们在UTF8字符集下输入”中“字,然后由通过终端菜单栏设置为GB2312,这是后我们看到前面输入的”中“字,变了样,我们在输入"中"字则能正常显示。这是由于操作系统会根据当前选择的字符集(一些16进制编码),来解析这些字节数据,如果系统看到buffer中的数据为[0XD6][0XD0],它是”中“字,则按照此字节到字库中找到”中“字的字模显示到终端。
疑问:例如我们使用某一种编辑器写代码,编写代码时是以某UTF8格式输入的。
定义了两个变量 char * pChar = “你们好”;char charStr = [];
疑问1. 如果我想 strncpy(pChar,charStr,strlen(pChar)); //其中strlen(pChar)等于多少?在不同编码格式下一样吗?
我们的代码编辑器,编辑代码时设置的编码不一致,我们写入字符串实际保存到数组中的字节也不一样。
疑问2. Linux嵌入式产品中的编码,在哪里设置。
在应用程序中使用