在C中访问命令行参数

Pet*_*erK 3 c command-line-arguments

如果这是一个菜鸟问题,请原谅我,但我是C的初学者,只学习一段时间.我试着编写一个总结两个数字的程序(作为应用程序的参数提供).代码是这样的:

#include <stdlib.h>
#include <stdio.h>

int main( int argc, char** argv)
{
   int a = atoi(argv[0]);
   int b = atoi(argv[1]);
   int sum = a+b;
   printf("%d", sum);
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

但是我得到了不正确的结果 - 即使对于像5和10这样的小输入也是如此.这里有什么问题?

tor*_*rak 18

程序的第一个参数是程序本身的名称.请尝试使用以下内容.

int a = atoi(argv[1]); 
int b = atoi(argv[2]); 
Run Code Online (Sandbox Code Playgroud)

  • 哇,你赢了.虽然现在我正在考虑它,为什么他会得到"巨大数字"?几乎在所有情况下,atoi(argv [0])都不应该是"0"吗? (2认同)