gpt4 book ai didi

c - 按照 fprintf 语法定义字符串

转载 作者:行者123 更新时间:2023-12-02 15:14:20 24 4
gpt4 key购买 nike

如何在 C 中构建包含参数的字符串?有没有类似于 fprintf 语法的方法来做到这一点?例如这里有一个小testProg.c:

int main(int argc, char *argv[]) {
printf("You are running %s program.\n", argv[0]);
// It will print: "You are running testProg.c program.\n"
char myString[];
// I want the string printed by printf to be saved inside myString[]
// ...
}

最佳答案

您可以使用snprintf。首先确定适合内容的 myString 的缓冲区大小。然后使用snprintf填写内容。

char myString[100] = "";
snprintf( myString, sizeof(myString), "You are running %s program.", argv[0] );

snprintf 类似于fprintf(它是printf 的一般版本,输出流为stdout ), 所以应用了所有的控制格式——细节可以在标准中找到:

7.21.6.5 The snprintf function

     #include <stdio.h>
int snprintf(char * restrict s, size_t n,
const char * restrict format, ...);

关于c - 按照 fprintf 语法定义字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41424387/

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