我有以下代码示例:
double t_values[FFT_SIZE];
AnsiString prefix;
double multiplier;
AutoScaleData(t_values, FFT_SIZE, prefix, multiplier);
AnsiString str;
str.printf("Voltage [%sV]", prefix);
很简单不是吗?字符串str用作图形中显示的数值的描述。对于 0.05 V 的值,说“电压为 50 mV”更为全面和直观。这是通过在这种情况下使用适当的前缀“m”来确保的。对于值范围 <1;1000) 不需要添加任何前缀。例如,我们可以说“这个元件上的电压是 50 伏”,这是完全可以理解的。当前缀为空字符串时,我遇到库函数 printf 不断添加字符串“(null)”的问题,例如:
“电压 [(null)V]”
在使用 Microsoft Visual Studio 之前,我从未见过这种行为。可以以某种方式避免这种行为吗?