我正在写一个制作单词阶梯的程序。后一个词是从单词A到单词B的路径。例如
头 - >治愈 - >青色 - >告诉 - >高 - >尾
在我的主文件中,我应该传递这些命令行参数:.txt文件的文件名,包含字典,起始字,结束字以及允许获取的步数从a到b。我假设你只是将参数放在main上,但它不起作用。我有
int main(int argc, char* argv[], string start, string end, int steps)
{
return 0;
}
当我尝试编译时,它给了我两个警告。第一个想要我的字符串是char **。第二个说它只需要零到两个参数。
如何从命令行传入文件名,两个字符串和一个整数?
答案 0 :(得分:1)
main
的第一个参数是命令行上的参数数量。
第二个参数是指向参数文本(C样式字符数组)的指针数组。
如果按如下方式执行程序:
homework1.exe dictionary.txt alpha eclipse 25
参数count变量将包含5(包括程序名称)。 这是指针数组的样子:
[0] "homework1.exe"
[1] "dictionary.txt"
[2] "alpha"
[3] "eclipse"
[4] "25"
[5] nullptr
请注意,步数将采用文本格式,您需要将文本格式转换为内部格式。一种转换方法是使用std::istringstream
。