C 如何使用write函数格式化字符串?

C 如何使用write函数格式化字符串?,c,unix,C,Unix,在我的C程序中,我使用printf(“%d%s%s\n”,node->id,node->date,node->input)将字符串打印到命令终端但是我现在需要使用write函数write(STDOUT_FILENO,cmdline,strlen(cmdline)) 如何像使用printf一样格式化字符串?用于将字符串格式化为字符缓冲区,然后写入该缓冲区。用于将字符串格式化为字符缓冲区,然后写入该缓冲区。实际上,不要养成使用sprintf()的习惯-它只会在以后导致崩溃和漏洞!只能使用具有缓冲区溢

在我的C程序中,我使用
printf(“%d%s%s\n”,node->id,node->date,node->input)将字符串打印到命令终端
但是我现在需要使用write函数
write(STDOUT_FILENO,cmdline,strlen(cmdline))


如何像使用printf一样格式化字符串?

用于将字符串格式化为字符缓冲区,然后
写入该缓冲区。

用于将字符串格式化为字符缓冲区,然后
写入该缓冲区。

实际上,不要养成使用
sprintf()的习惯
-它只会在以后导致崩溃和漏洞!只能使用具有缓冲区溢出保护的这些函数的版本。实际上,不要养成使用
sprintf()
的习惯-这只会在以后导致崩溃和漏洞!只能使用具有缓冲区溢出保护的这些函数的版本。