C 将日期与printf中的其他变量打印在同一行上
我试图在C 将日期与printf中的其他变量打印在同一行上,c,printf,system,C,Printf,System,我试图在printf中使用system(“date”),但我希望它位于同一行,我不知道如何正确格式化它。任何建议 printf("Temperature %.2f date %d \n", val, system("date")); system函数返回给定外部命令的退出状态,如果成功,该状态通常为0。正在运行的特定命令在您的进程之外,因此您对它的输出没有太多控制权 您可以调用一些函数来获取所需信息,而不是调用外部命令 您需要首先使用time函数,该函数提供自1970-01-01 00:00:
printf
中使用system(“date”)
,但我希望它位于同一行,我不知道如何正确格式化它。任何建议
printf("Temperature %.2f date %d \n", val, system("date"));
system
函数返回给定外部命令的退出状态,如果成功,该状态通常为0。正在运行的特定命令在您的进程之外,因此您对它的输出没有太多控制权
您可以调用一些函数来获取所需信息,而不是调用外部命令
您需要首先使用time
函数,该函数提供自1970-01-01 00:00:00 UTC的UNIX时代以来的时间(以秒为单位)。然后将其传递给ctime
函数,该函数为您提供时间的文本表示:
time_t t = time(NULL);
printf("date is %s", ctime(&t));
可能您可以使用或:
ctime()
是否在其结果后加上新行?;-)@当然可以。如果您使用%.24s
(这是很常见的)来修复它,您刚刚引入了可怕的y10k错误。@SteveSummity10k错误
我不在乎。:)