命令行参数
1
int main(int argc,char* argv[]);

argc 代表参数的个数。

argv 是个字符串数组,用以存储用户的输入的参数(默认第一个参数是程序本身的名称)。

我重点要讲的是如何把获取的参数转换为实际的类型,哪怕你写的是整数参数,也会是字符串类型。

1
int sscanf(const char *str, const char *format, ...);

从字符串中读取数据,并将其转换为指定的格式。常见转换格式:

  • %d:将字符串转换为整数(int)。
  • %f:将字符串转换为浮点数(float)。
  • %lf:将字符串转换为双精度浮点数(double)。
  • %c:将字符串的第一个字符转换为 char
1
2
3
4
5
int num;
// 将命令行参数 argv[1] 转换为整数
if (sscanf(argv[1], "%d", &num) == 1) {
printf("You entered the number: %d\n", num);
}