零基础 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 和后面每一个参数之间有空格隔开;
三.猜你喜欢
- C语言 数组下标越界和内存溢出区别
- C语言 使用指针遍历数组
- C语言 指针和数组区别
- C语言 指针数组和数组指针区别
- C语言 野指针
- C语言 函数值传递和址传递
- C语言 函数不定长参数
- C语言 函数指针
- C语言 指针函数
- C语言 回调函数 callback
- C语言 #pragma once
- C语言 #include <> 与 #include “” 区别
- C语言 const 修饰函数参数
- C语言 const 和 define 区别
- C语言 #运算符
- C语言 ##运算符
- C语言 __VA_ARGS__
- C语言 ##__VA_ARGS__
- C语言 函数不定长参数 ##__VA_ARGS__经典案例
- C语言 va_start 宏
- C语言 va_end 宏
- C语言 va_arg 宏
- C语言 vprintf 函数
- C语言 va_start / va_end / va_arg 自定义 printf 函数
- C语言 main 函数
- C语言 main 函数参数 main(int argc, char *argv[])
ChatGPT 3.5 国内中文镜像站免费使用啦
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容