使用参数制作命令行程序

Making command-line programs with arguments

本文关键字:命令行 程序 数制 参数      更新时间:2023-10-16

我发现可以通过C++创建命令行程序。我是一个C++新手,我只知道一些基本的东西,但我仍然想用它来创建新的命令行程序
现在,我发现了这个代码:

//file name: getkey.exe
#include <conio.h>
int main(){
    if (kbhit())  return getche() | ('a' - 'A');
}

它非常简单,运行方式如下:getkey
但它没有解释如何创建带有参数的命令(如:getkey/?或/K或/foo…)

如何创建带有参数的命令行程序 <lt;主要问题

您只需要main():的不同声明

#include <iostream>
int main(int ac, char* av[]) {
{
    std::cout << "command line arguments:n";
    for (int i(1); i != ac; ++i)
        std::cout << i << "=" << av[i] << "n";
}

将函数main定义为接受以下两个参数:

int main( int argc, char* argv[] )

argc将用传递的参数的个数填充,argv将是这些参数的数组,作为以null结尾的字符串。(C样式字符串)

程序名称本身将作为第一个参数,因此getkey /?将argc设置为2argv[0]将为"getkey",argv[1]将为"/?"

要处理命令行参数更改:

int main()

int main(int argc, char** argv)

argc是命令行参数的数量(argv中的元素数量)。argv是命令行参数(其中argv中的第一个条目是可执行程序的名称)。