我正在尝试将用C ++编写的东西重写为C语言。
double sclk_freq_mhz = (double)pLog->clk_freq / 1000L;
<{1}}所属的pLog结构中的属于clk_freq
类型,因此它被类型转换为unsigned int
的原因。但是,我注意到1000年底有一个double
。这是L
的内容是什么?它似乎是某种格式说明符或长度说明符,我不熟悉。
如果我想在C中写上述语句,我需要做什么?我是按照以下方式写的吗?
L
谢谢!
答案 0 :(得分:5)
L
中的 1000L
表示此整数文字的类型为long
。
至于如何将C ++代码转换为C,答案是:它已经是合法的C代码。使用sprintf
的代码没有意义。