如果:
printf("系统初始化正常 hello word : %u\r\n",Cnt++);
换成:
SendString("\r\n系统初始化正常 hello word : ");
printf("%u",Cnt++);
是不会出现乱码的。
所以,问题不在字符串,不在汉字,也不在编译器,而是:
在明知KEIL C51 的 printf 不支持汉字,还非要用printf 发送汉字,就算没有现成的SendString,自己写一个
void SendString(char *p)
{
while(*p) SendUart(*p++);
}
就那么一句话的函数,很难么?
|