[英]Simple printf program doesn't work
该程序不起作用,我也不知道为什么。
#include <stdio.h>
int main()
{
printf("%а", 20.0);
}
我正在C99中编译。 预期输出为0x1.4p + 4
а
是CYRILLIC SMALL LETTER A (U+0430)
,但您必须使用LATIN SMALL LETTER A (U+0061)
: a
。
如果您使用的是能够检查Clang或GCC之类的格式字符串的编译器,请使用(至少) -Wall
进行编译,其中包括-Wformat
( GCC警告文档 )
5 : warning: unknown conversion type character 0xffffffd0 in format [-Wformat]
5 : warning: too many arguments for format [-Wformat-extra-args]
它真的很有线。 当我复制粘贴您的代码时,它变成printf("%?", 20.0);
您应该检查您的字符编码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.