C语言 main 函数参数 main(int argc, char *argv[])

Posted 猿说编程

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言 main 函数参数 main(int argc, char *argv[])相关的知识,希望对你有一定的参考价值。

目录

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门

一.main 函数写法

在 C99 标准中定义 main 函数两种正确的写法

/******************************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:C语言教程 - C语言 main 函数参数 main(int argc, char *argv[])
//@Time:2021/07/16 07:30
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/******************************************************************************************/


int main(void) { /* ... */ }

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

二.main 函数参数简介

/*
参数介绍
argc : main函数参数个数,当参数为void的时,argc=1,默认参数为可执行文件名
argv : 指针数组,分别指向个参数字符串首地址,其中argv[0]指向默认参数
*/
int main(int argc, char *argv[]) { /* ... */ }

默认情况下,argc 值为 1,表示 argv[0] 当前工程可执行文件的文件名;后面的参数从 arg[1] 开始都按顺序存放在字符数组中,argc 数至少是 1 个;

三.使用 main 函数参数

1.打印 main 函数参数

避免控制台程序一闪而过,我们可以使用 **system(“pause”) **等待用户输入后,在结束程序;

/******************************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:C语言教程 - C语言 main 函数参数 main(int argc, char *argv[])
//@Time:2021/07/16 07:30
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/******************************************************************************************/

#include <stdio.h>
#include <windows.h>

int main(int argc,char *argv[])
{
  int ii=0;

  // 显示参数的个数
  printf("argc is %d\\n",argc);

  // 列出全部的参数
  for (ii=0;ii<argc;ii++)
  {
    printf("argv[%d] is %s\\n",ii,argv[ii]);
  }
  system("pause");
}
/*
输出:

argc is 1
argv[0] is C:\\Users\\Administrator\\Desktop\\mainFunc\\Debug\\mainFunc.exe
请按任意键继续. . .
*/

默认情况下,argc 值为 1,表示 argv[0] 当前工程可执行文件的文件名

a.直接运行 exe 文件

argc is 1
argv[0] is C:\\Users\\Administrator\\Desktop\\mainFunc\\Debug\\mainFunc.exe
请按任意键继续. . .

b.打开 cmd 命令行窗口执行 exe 文件

c.打开 cmd 命令行窗口执行 exe 文件并设置 main 函数参数

注意:exe 和后面每一个参数之间有空格隔开;

2.使用 main 函数参数

/******************************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:C语言教程 - C语言 main 函数参数 main(int argc, char *argv[])
//@Time:2021/07/16 07:30
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/******************************************************************************************/

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

void Add(int a, int b)
{
	printf("%d\\n", a + b);
}

void Mul(int a, int b)
{
	printf("%d\\n", a*b);
}

void Sub(int a, int b)
{
	printf("%d\\n", a - b);
}

void Div(int a, int b)
{
	printf("%d\\n", a / b);
}

int main(int argc, char *argv[])
{
	if (argc < 4)
	{
		printf("输入格式错误,请按照指定格式输入,例如:xxx.exe -a 4 5 \\n");
		system("pause");
		return 0;
	}

	int a = atoi(argv[2]);
	int b = atoi(argv[3]);
	if (strcmp("-a", argv[1]) == 0)
	{
		Add(a, b);
	}
	else if (strcmp("-s", argv[1]) == 0)
	{
		Sub(a, b);
	}
	else if (strcmp("-m", argv[1]) == 0)
	{
		Mul(a, b);
	}
	else if (strcmp("-d", argv[1]) == 0)
	{
		Div(a, b);
	}
	system("pause");
	return 0;
}
/*
直接执行exe文件会提示:

输入格式错误,请按照指定格式输入,例如:xxx.exe -a 4 5
请按任意键继续. . .

报错是因为我们没有为 main 函数设置输入参数,打开 cmd 窗口设置参数即可!!
*/

注意:exe 和后面每一个参数之间有空格隔开;

三.猜你喜欢

  1. C 语言 数组下标越界和内存溢出区别
  2. C 语言 使用指针遍历数组
  3. C 语言 指针和数组区别
  4. C 语言 指针数组和数组指针区别
  5. C 语言 野指针
  6. C 语言 函数值传递和址传递
  7. C 语言 函数不定长参数
  8. C 语言 函数指针
  9. C 语言 指针函数
  10. C 语言 回调函数 callback
  11. C 语言 #pragma once
  12. C 语言 #include <> 与 #include “” 区别
  13. C 语言 const 修饰函数参数
  14. C 语言 const 和 define 区别
  15. C 语言 #运算符
  16. C 语言 ##运算符
  17. C 语言 __VA_ARGS__
  18. C 语言 ##__VA_ARGS__
  19. C 语言 函数不定长参数 ##__VA_ARGS__经典案例
  20. C 语言 va_start 宏
  21. C 语言 va_end 宏
  22. C 语言 va_arg 宏
  23. C 语言 vprintf 函数
  24. C 语言 va_start / va_end / va_arg 自定义 printf 函数
  25. C 语言 main 函数
  26. C 语言 main 函数参数 main(int argc, char *argv[])

未经允许不得转载:猿说编程 » C 语言 main 函数参数 main(int argc, char *argv[])

本文由博客 - 猿说编程 猿说编程 发布!

以上是关于C语言 main 函数参数 main(int argc, char *argv[])的主要内容,如果未能解决你的问题,请参考以下文章

C语言 main 函数参数 main(int argc, char *argv[])

main是啥意思,在C语言中又是啥意思

C语言中 main 是啥意思?详细的啊

C语言中的“main”可以用别的字母代替吗?比如“mai”或"ain"等。

带参数的main函数,应该怎样运行呢

C语言 main()前可以放哪些限定的函数!?