将整数转换为数组

Mic*_*cky 2 c

我正在研究一个C程序,我遇到了一个小问题.我不知道如何将整数(比如2007)转换为char数组.C库中有一个函数可以帮我吗?

为了澄清,我想把2007年存储在一些char数组中[4] = {'2','0','0','7','\ 0'};

我在想像sprintf,但我不确定.无论如何,任何帮助/提示将不胜感激.

谢谢,迈克尔

Tod*_*lin 12

您可以使用sprintf或更安全地执行此操作snprintf.

这是一个人为的例子:

#include <stdio.h>
#define MAX_LEN 5

char str[MAX_LEN];
snprintf(str, MAX_LEN, "%d", 2007);
Run Code Online (Sandbox Code Playgroud)

  • +1.使用`sizeof(str)`作为`snprintf`的第二个参数通常是个好主意,尽管你在这里使用宏的效果同样好,以防缓冲区的大小发生变化. (2认同)