keil MDK 在0x5C(字符‘\’)的bug问题,求指导!
正在学习uC/OS-II 基于STM32 USART重构printf函数结果在判断字符遇到这个bug代码如下void UsartPrintf(char *pstrbuff){
while(*pstrbuff)
{
if('\'==(*pstrbuff))
pstrbuff++;
}
}这时Keil MDK编译器会报错“missing closing quote”。换成如下代码则该错误消失void UsartPrintf(char *pstrbuff)
{
while(*pstrbuff)
{
if('n'==(*pstrbuff))
pstrbuff++;
}
}网上搜是keil的bug, 在论坛里搜了个 是KC51的 可能是安装问题 不怎么好用我现在使用的时Keil V4.10不知有哪位大牛遇到过。求教
\是转义字符,如果你要表示\本身为一个字符,你应该使用'\\'而不是'\' 我二了 其实可以换种写法 如下void UsartPrintf(char *pstrbuff)
{
while(*pstrbuff)
{
if(0x5C==(*pstrbuff))
pstrbuff++;
}
} Goselff 发表于 2013-8-31 00:36 static/image/common/back.gif
\是转义字符,如果你要表示\本身为一个字符,你应该使用'\\'而不是'\'
{:handshake:}实测可用受教了 Goselff 发表于 2013-8-31 00:36 static/image/common/back.gif
\是转义字符,如果你要表示\本身为一个字符,你应该使用'\\'而不是'\'
赞成此君说法!!
页:
[1]