如何在整数后放置 % 符号

How can i place % symbol after an interger

我需要打印一个带有整数和后面符号 % 的字符串。

这是我的尝试:

sprintf(txt, "%d",CurrentArrayValue,'%');

但我的结果只是我的数字。 None 之后的符号

sprintf(txt, "%d%%",CurrentArrayValue);

这样就可以了。

来自 standard §7.21.6.1 C11 标准 N1570

%

A % character is written. No argument is converted. The complete conversion specification shall be %%.

使用,只需一个 %% 格式字符串:

sprintf(txt, "%d%%",CurrentArrayValue * 100);

您的 '%'sprintf 忽略,因为您的格式字符串向函数表明只需要一个附加参数。

顺便说一下,您必须自己将 CurrentArrayValue 乘以 100:我将其添加到函数参数列表中。