ngu*_*rie 4 verilog system-verilog
我想将一些实数打印到日志文件中。为了使它们易于阅读,我希望它们都具有相同的宽度。我知道这些数字的范围从 0 到 4095.75,所以我试过这个:
$display("expected= %4.2f, actual= %4.2f", expected, actual)
Run Code Online (Sandbox Code Playgroud)
我希望看到的是这样的:
expected= 12.25, actual= 12.75
expected= 4093.25, actual= 4094.75
Run Code Online (Sandbox Code Playgroud)
但我得到的是这样的:
expected= 12.25, actual= 12.75
expected= 4093.25, actual= 4094.75
Run Code Online (Sandbox Code Playgroud)
如何强制小数点上方值的宽度为 4 个字符?第21.2.1.3节LRM显示数据的大小在 %f 上是静默的。
%7在我尝试过的 2 个模拟器中使用适用于您的值:
module tb;
real expected, actual;
initial begin
expected = 12.25; actual= 12.75;
$display("expected= %7.2f, actual= %7.2f", expected, actual);
expected= 4093.25; actual= 4094.75;
$display("expected= %7.2f, actual= %7.2f", expected, actual);
#5 $finish;
end
endmodule
Run Code Online (Sandbox Code Playgroud)
输出:
expected= 12.25, actual= 12.75
expected= 4093.25, actual= 4094.75
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13823 次 |
| 最近记录: |