📜  C printf to string - C 编程语言(1)

📅  最后修改于: 2023-12-03 15:13:46.176000             🧑  作者: Mango

C中printf转为字符串

在C编程中,printf是用于将输出打印到标准输出设备的函数。但是,有时候我们需要将printf的输出转换为一个字符串,这里我们就需要用到snprintf函数。

什么是snprintf函数?

snprintf函数是一个可变长参数函数,类似于printf函数,但将字符串输出到字符数组中,而不是标准输出设备。在C字符串中,snprintf函数最多只能输出指定字符数的字符串。

int snprintf(char *str, size_t size, const char *format, ...);

其中,str是字符数组,size是字符数组最大长度,format是格式化字符串,...表示可变参数列表。

如何将printf输出转换成字符串?

下面是将printf输出转换为字符串的示例代码:

#include <stdio.h>

int main() {
    char str[100];
    int size = sizeof(str);
    int n = snprintf(str, size, "Hello, %s\n", "world!");

    // 输出转换后的字符串
    printf("转换后的字符串为: %s", str);

    return 0;
}

输出结果为:

转换后的字符串为: Hello, world!
总结

在C编程中,我们有时需要将printf输出转换为一个字符串,这时我们可以使用snprintf函数。它可以将printf输出转换成字符数组,使我们可以将其打印出来或保存到文件中。