C:主要的这些论点是什么?

时间:2013-07-28 04:28:11

标签: pointers arguments main

我正在读一本书,所以我可以重新学习C ++,并且我继续看到以下关于main的参数:

int main(int nNumberOfArgs,char* pszArgs[]))

我不确定这些论点是什么意思。我做了一些研究,我认为我有一个基本的了解。

我在Matlab中做了很多编程,我经常创建一个函数:

function output=myfunct(varargin)

其中varargin是一个关键字,表示任何参数。我可以作为一个论点给它任何东西。 myfunct(1,2,'a string',objectvariable)

“nargin”是一个关键字,表示参数的数量。

所以我理解main函数的这些参数的方式是:

int main(int nargin,char* varargin[])

我说的任何内容都有意义吗?你能更好地向我解释一下吗?我还不太明白如何使用指针和引用。

2 个答案:

答案 0 :(得分:3)

这有点不同。这些参数引用命令行参数。因此,当您从命令行调用程序时,如下所示:

$ myProg arg1 arg2 arg3

nNumberOfArgspszArgs的值将为

nNumberOfArgs = 3

pszArgs = {"arg1", "arg2", "arg3"}

此外,由于您提到了指针,pszArgs的类型为char* [],因为字符串是char的数组,而数组只是指向第一个元素的指针。

答案 1 :(得分:-1)

可能这样想:int nNuberofArgs声明一个与下一个参数大小相同的整数。下一个参数是char * pszArgs [],这会创建一个数组程序的长度,因此nNumberofArgs引用指向字符串(ps)的指针,零终止(z),换句话说,创建足够的空间来运行程序