C 创建一个包含给定数量空格的字符串

C 创建一个包含给定数量空格的字符串,c,C,我有一个int类型的变量,它应该表示空格的数量。如何创建一个包含与变量值一样多的空格字符的字符串? 例如: int-Var=4 转换为字符串的应为”StackOverflow不是免费的编码服务。所以我希望你能。请更新您的问题,以显示您已在某个应用程序中尝试过的内容。有关更多信息,请参阅,并选择:)@Antonio您是否真的希望在内存中使用字符串,还是只希望打印该数量的空格?您希望结果如何?你有需要的缓冲区吗?您是否需要必须释放的新malloced缓冲区?只需打印结果?char*输出;asprin

我有一个int类型的变量,它应该表示空格的数量。如何创建一个包含与变量值一样多的空格字符的字符串? 例如:

int-Var=4


转换为字符串的应为

StackOverflow不是免费的编码服务。所以我希望你能。请更新您的问题,以显示您已在某个应用程序中尝试过的内容。有关更多信息,请参阅,并选择:)@Antonio您是否真的希望在内存中使用字符串,还是只希望打印该数量的空格?您希望结果如何?你有需要的缓冲区吗?您是否需要必须释放的新malloced缓冲区?只需打印结果?
char*输出;asprintf(&output,“%*s”,var,”)/*现在输出为“[4空格]”*/free(输出)
字符串是否应该只包含空格?如果你能分享更多,也许会更好。
calloc
+
memset
..@EugeneSh。这是一个教育版本。显示所有步骤。。。。。不管怎样,大多数编译器都会将其优化为memset
char *integerToSpaces(unsigned i)
{
    char *str = malloc(i + 1);
    char *ptr = str;

    if(!str) return NULL;
    while(i--)
    {
        *ptr++ = ' ';
    }
    *ptr = 0;
    return str;
}