我正在使用 UCI 协议设计一个国际象棋游戏。该程序需要行命令作为输入。
我的问题是我是否需要一个与解析这些命令的函数分开的main()
函数,以及如何获取解析的输入?我意识到这char* argv
是在函数参数中命名的,但我发现 usingargv = cin.get()
不起作用。
我看过很多教程,但没有一个回答任何一个问题。
如果措辞不好,我也很抱歉。
我可以建议非神话编程:
#include <string>
#include <vector>
int main(int argc, char**argv)
{
const std::vector<std::string> args(argv, argv+argc);
// be merry and use `args`
}
更新嗯。我猜你的意思是控制台/标准输入。在这种情况下,读取循环可能就是您想要的:
std::string line;
while (std::getline(std::cin, line))
{
// process command in line
}