gpt4 book ai didi

c - 使用 snprintf 进行字符串连接

转载 作者:行者123 更新时间:2023-11-30 20:05:03 24 4
gpt4 key购买 nike

我正在使用 snprintf() 创建一个字符串:

snprintf(msgText, MAX_MSG_SIZE-1, "expr $((($(date +%s) - $(date +%s -r filename.txt)) / 86400))");

这旨在将 Linux 命令存储在 msgText 中。该命令将稍后执行并输出 filename.txt 的使用期限(以天为单位)。

这里的问题是:

这是错误的,因为 snprintf 期望 %s 有一个字符串参数。编译器报告此错误:

error: format ‘%s’ expects a matching ‘char *’ argument 

我应该做什么?

最佳答案

如果你想要 %s被替换,然后提供 const char* snprintf 的参数以及要写入的值。

如果你想要文字%smsgText ,然后转义 %%% ,或将该字符串作为单个参数传递给格式字符串 "%s" :

snprintf(msgText, MAX_MSG_SIZE-1, "%s", "$(date +%s) ...");

关于c - 使用 snprintf 进行字符串连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34048848/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com