【发布时间】:2020-04-07 17:52:25
【问题描述】:
我想要做的是在命令行中写入参数,用 + 分隔并将参数连接成一个字符串 例如:
./concat Wow + this + is + cool
Wow this is cool
我之前曾针对此类主题查找过一个问题,但这涉及仅连接每个参数的第一个字符,而不是整个参数。而且它没有忽略分隔符
这就是我所拥有的
void concat(char **argv, int argc, char *string)
{
size_t i = 0;
for(int j=1; j<argc; j++)
{
string[i++] = *argv[j];
if(j+1 != argc)
{
string[i++] = ',';
string[i++] = ' ';
}
}
string[i] = '\0';
}
这就是我在 main 中调用这个函数的方法
int main(int argc, char *argv[])
{
int allnum=0;
char string[1000];
concat(argv, argc, string);
printf("%s\n", string);
}
【问题讨论】:
-
为什么不能只打印备用参数?
标签: c command-line-arguments string-concatenation