1
我需要打印可變數字的給定字符與我的格式化輸出。我正在尋找與VBA函數String(num,char)類似或相當的東西,但一直未能找到任何東西。我已經寫了一個函數來完成這項工作,但如果有內置的東西,我很想知道。這是我的。爲了測試的目的,我使用了argv []的草率實現。如何打印單個字符的可變長度字符串
我想打印出的東西是這樣的;
這裏是粗略的實施,我想出了;
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
const char * make_string(int num, char character)
{
char *strchars = malloc(num);
for (int i = 0; i < num; i++)
strchars[i] = character;
return strchars;
}
int main(int argc, char *argv[])
{
for (int i = 1; i < argc; i++) {
printf("%s\n", make_string(strlen(argv[i]),'_'));
printf("%s%c %s\n", make_string(strlen(argv[i]),'_'),'|', argv[i]);
}
}
是否有印刷重複這樣的字符的字符串的庫函數?
你的程序像內存風暴中的貨物網頂一樣泄漏內存。這對您的演示程序可能無關緊要,但最好養成確保您釋放所有分配的內存的習慣。 –
另外,您必須確保爲字符串終止符允許空格,並在每個字符串的末尾插入一個空格。 –
在任何情況下,C標準庫都不包含您正在查找的功能。 –