【发布时间】:2014-10-21 21:41:35
【问题描述】:
当我运行以下代码时:
#include <stdio.h>
#include <conio.h>
void main(){
clrscr();
printf("%%");
getch();
}
我得到 % 作为输出?
这个逻辑背后的原因可能是什么?
【问题讨论】:
-
因为它就是这样做的。 stackoverflow.com/a/1860164/242520
-
一个逃脱另一个,简单:)
-
打印它们的一些快速方法:
printf("\%\%");、printf("%c%c",'%','%');、printf("%s","%%");。 -
@barakmanos 你确定
\%会起作用吗? -
@barakmanos
printf使用的%系统和家庭不与语言使用的\系统交互,因此要转义%,您必须使用@987654331 @ 即%%和两个%s 你可以做%%%%。但是,最好只将格式信息放在格式字符串中,例如printf("%s","%%");`printf("%s","hello %%");