我试图将三个printf语句转换成一个更长的语句,用C. 我想转:
printf("The current system time is ");
printf("%f", get_current_time());
printf("\n");
到单个printf
语句中,其中函数get_current_time
返回double
,例如1459231814.421397
或类似名称。
我设法得到的最接近的是
printf("The current system time is " , ("%f" (get_current_time())), "\n");
只返回一个错误,即:
error: called object is not a function or function pointer
:
printf("The current system time is " , ("%f" (get_current_time())), "\n");"
并指出"
之前的%f
。
三个单独的printf
语句打印:
"The current system time is 1459231876.947026"
或类似的设定次数,每次都在新的一行,这就是我想要的。
我不明白为什么它在分离时有效,但将它们一起添加到一个长语句中就会失败。我确定我必须错误地格式化较长的陈述,只是不确定我做错了什么。 非常感谢任何帮助,如果这个问题的格式不是很好,我很抱歉,这是我提出的第一个问题。
答案 0 :(得分:1)
不确定为什么没有人提到这一点,但是:
printf("The current system time is %f\n", get_current_time());
答案 1 :(得分:1)
printf("The current system time is %f \n",get_current_time());
答案 2 :(得分:1)
使用以下内容:
printf ( "The current system time is %f\n", get_current_time() );
答案 3 :(得分:0)
这是printf
printf("%s%f\n", "The current system time is ", get_current_time());
答案 4 :(得分:0)
你想要的是:
printf("%s%f\n", "The current system time is ", get_current_time());
或
printf("The current system time is %f\n", get_current_time());