我只想知道这些行实际上做了什么。
int main(int argc, char *argv[])
特别是这一个:
int n = atoi (argv[1]);
我在一本书中读过这篇文章,但我无法理解这些内容。
答案 0 :(得分:9)
这会将第一个命令行参数转换为整数。例如,如果你像这样打电话给你的程序
./a.out 123
然后n
将为123
。
请注意,在访问argv[1]
之前,必须检查argc
是否大于1
,即检查在命令行上是否已将至少一个参数传递给您的程序。
答案 1 :(得分:0)
argc是参数的计数。 argv是参数变量的缩写。它将包含在命令行上传递的所有参数。 argv [1]包含第一个参数,所以atoi(argv [1])将第一个参数转换为int