我知道静态和动态内存分配之间的区别。我还知道在编译时变量的长度可以确定时使用静态方法,而在运行时变量的长度不能确定时使用动态分配方法,但是命令行参数在该范围内在哪里。我已经将c代码编译为机器代码,并使用./a.out运行代码。我总是可以这样声明一个变量:int array [n]。对于一小段软件,是否静态声明数组还是动态声明数组是否重要:double * array =(double *)malloc(n * sizeof(double))?

最佳答案

默认情况下,您将使用以下内容:

int main(int argc, char *argv[]) {
...
}


命令行参数存储在一个名为argv的char数组中,其长度是一个称为argc的整数。 Argv[0]是程序名称。之后的所有内容都是命令行参数。

如果您想了解更多信息,建议您浏览文档。
https://en.cppreference.com/w/cpp/language/main_function

关于c - 命令行参数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58892059/

10-13 01:12