NKS*_*NKS 1 c++ arrays command-line
我有一个要求,我需要从命令行调用C++应用程序,并需要传递一个int类型的二维数组.任何人都可以让我知道如何做到这一点,以及如何使用argv参数在C++应用程序中解释它
提前致谢.
在argv你只能传递包含字符串的一维数组时,它就是
char* argv[]
Run Code Online (Sandbox Code Playgroud)
所以,你不能真正传递2D数组,但你可以"模拟"它.
例如,传递2个参数,说明矩阵的大小 - 行数和列数,然后逐个传递所有元素.
然后解析程序中的参数,知道您将使用哪种格式.
例如:如果你想通过
1 2 3
4 5 6
Run Code Online (Sandbox Code Playgroud)
你可以像这样运行你的程序:
./my_program 2 3 1 2 3 4 5 6
Run Code Online (Sandbox Code Playgroud)
这样,您就会知道,从左上角开始,这argv[1]是行数,argv[2]s列数以及2D数组的所有元素.
不要忘记,这argv是包含char*指针的数组.换句话说,您需要转换所有参数int.