gpt4 book ai didi

清理 argv 程序

转载 作者:行者123 更新时间:2023-11-30 17:16:19 30 4
gpt4 key购买 nike

我有一个 argv c 程序,它反转单词,并查看它是否是回文。我只是想清理输出并让它打印原始输入而不是相反的输入,但由于它是 argv,我似乎不知道该怎么做。

int main(int argc, char* argv[])
{
char *string = (char*)malloc(1000);
string[0] = '\0';

for(i = 1; i < argc; i++)
strcat(string, argv[i]);

for(j = 0; string[ j ]; j++)
string[j] = tolower(string[ j ]);

reverse(string);
printf("Reverse of entered word is \"%s\".\n", string);

result = is_palindrome(string);

if ( result == 1)
printf("\"%s\" is a palindrome.\n", string);
else
printf("\"%s\" is not a palindrome.\n", string);

system("pause");
}

我省略了其余的函数,但您可以在主要部分看到 printf 显示它是否是回文。不知道如何让它等于原始输入,并且知道参数的数量。目前它打印反转的字符串,而我认为打印原始字符串看起来会更好。我认为我把这件事搞得太难了,但我不确定。

最佳答案

显而易见的方法是反转反转的字符串,另一种方法是使用双引号将单个参数/字符串传递给程序:

./program "a man a plan a canal panama"

而不是

./program a man a plan a canal panama

那么你不需要循环遍历参数。

关于清理 argv 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29679920/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com