C语言 main 函数参数 main(int argc, char *argv[]) - C语言零基础入门教程

目录

  • 一.main 函数写法
  • 二.main 函数参数简介
  • 三.使用 main 函数参数
    • 1.打印 main 函数参数
      • a.直接运行 exe 文件
      • b.打开 cmd 命令行窗口执行 exe 文件
      • c.打开 cmd 命令行窗口执行 exe 文件并设置 main 函数参数
    • 2.使用 main 函数参数
  • 三.猜你喜欢

零基础 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[])

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/524706.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网络通信的两个要素

如何实现网络通信&#xff1f; 通信双方地址&#xff1a; ip 端口号 192.168.16.124:5900 规则&#xff1a;网络通信的协议 TCP/IP参考模型&#xff1a; 小结&#xff1a; 1.网络编程两个主要问题&#xff1a; 定位一台或多台主机 找到主机如何通信 2.网络编程要素 …

讲讲亿级PV的负载均衡架构!

戳蓝字“CSDN云计算”关注我们哦&#xff01;来源&#xff1a;孤独烟引言本来没想写这个题材的&#xff0c;为了某某童鞋能够更好的茁壮成长&#xff0c;临时写一篇负载均衡的。负载均衡&#xff0c;大家可能听过什么3层负载均衡、4层负载均衡、7层负载均衡什么的&#xff1f;那…

云漫圈 | 学Python还是Java, 8张漫画带你全面分析

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者&#xff1a;Leoxin来源&#xff1a;菜鸟学PythonJava和Python两门语言都是目前非常热门的语言&#xff0c;可谓北乔峰南慕容&#xff0c;二者不分上下&#xff0c;棋逢对手。但是对于初学者来说&#xff0c;非常困惑&#xff0…

史上最全SQL优化方案

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者&#xff1a;惨绿少年来源&#xff1a;Hollis在进行MySQL的优化之前&#xff0c;必须要了解的就是MySQL的查询过程&#xff0c;很多查询优化工作实际上就是遵循一些原则&#xff0c;让MySQL的优化器能够按照预想的合理方式运行而…

趣挨踢栏目精华汇总

出品 | CSDN云计算 有问有答&#xff0c;一问一答的形式&#xff0c;帮助大家快速解决更多专业难题。 出品 | CSDN云计算 趣挨踢&#xff0c;用最轻松活泼的形式&#xff0c;让你看尽生活百态。 趣挨踢 | 30 个让程序员崩溃的瞬间&#xff0c;笑死我了&#xff01; 趣挨踢 …

趣挨踢 | 只有挨踢人才能读懂的西游记

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | 刘超本文转载自公众号&#xff1a;刘超的通俗云计算一、我佛造经传极乐话说我佛如来为度化天下苍生&#xff0c;有三藏真经&#xff0c;可劝人为善。就如图中所示&#xff0c;真经所藏之处&#xff0c;在于云端。佛祖所管辖之…

react虚拟和真实DOM

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>1_使用jsx创建虚拟DOM</title> </head> <body> <!-- 准备好一个容器 --> <div id"test"></div> <div id"demo…

什么是5G,我们能从中得到什么?

戳蓝字“CSDN云计算”关注我们哦&#xff01;本文转载自公众号&#xff1a;SDNLAB今年&#xff0c;全球首个5G网络开通&#xff0c;向用户承诺了更快的数据传输速度和更低的延迟。此外&#xff0c;5G还为新的工业应用开辟了道路&#xff0c;成为实现“智能城市”的关键因素。5G…

微服务、Kubernetes和无服务器之后,即将发生的……

戳蓝字“CSDN云计算”关注我们哦&#xff01;本文转载自公众号&#xff1a;K8S技术社区现在是2019年了&#xff0c;Docker容器已经是旧闻&#xff0c;至少&#xff0c;它已经变得如此主流&#xff0c;不再是尖端技术。当然&#xff0c;微服务架构、Kubernetes、无服务器功能、服…

React之函数式组件

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>1_函数式组件</title> </head> <body> <!-- 准备好一个容器 --> <div id"test"></div> <!-- 核心库 --> <s…

OpenStack精华问答 | OpenStack都有哪些基础服务?

戳蓝字“CSDN云计算”关注我们哦&#xff01;关于OpenStack的探讨几乎从未间断&#xff0c;从2010年10月份一个版本正式发布至今&#xff0c;OpenStack在8年发展历程中&#xff0c;成为了最有争议的那一个。今天&#xff0c;我们就来看看有关于OpenStack的精华问答吧1Q&#xf…

要闻君说:小米9已确认无线充电;华为着手操作的5G火车站启动建设仪式将于本月18日“登陆”;三星提出大力发展电信网络设备业务……...

关注并标星星CSDN云计算每周三次&#xff0c;打卡即read更快、更全了解泛云圈精彩newsgo go go 嗨&#xff0c;大家好&#xff01;偶是要闻君。新的一年诸多工作已紧锣密鼓在排队&#xff0c;《云要闻》栏目也将继续用心陪伴在看官们周围&#xff0c;工作日第一天&#xff0c;来…

Storm精华问答 | task与executor有什么关系?

戳蓝字“CSDN云计算”关注我们哦&#xff01;归于Apache社区&#xff0c;Storm被业界称为实时版Hadoop。随着越来越多的场景对Hadoop的MapReduce高延迟无法容忍。而目前已是分布式技术领域最新爆发点&#xff0c;Storm更是流计算技术中的佼佼者和主流。今天我们就一起来看看Sto…

React之props基本使用

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>1_props基本使用</title> </head> <body> <!-- 准备好一个容器 --> <div id"test1"></div> <div id"test2&qu…

K8S安全军规101:对CNCF最佳实践的扩充

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | GOINS本文转载自公众号&#xff1a;RancherLabs在昨天的文章里&#xff0c;我们分享了CNCF为广大Kubernetes用户建议的9项Kubernetes安全最佳实践&#xff0c;分享了用户使用Kubernetes管理集群时的9个能进一步确保集群安全的…

React之类式组件中的构造器与props

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>2_类式组件中的构造器与props</title> </head> <body> <!-- 准备好一个容器 --> <div id"test1"></div> <div id&q…

要闻君说:小米手机部组织架构突现大调整;河南联通重启VDC扩容工程招标;英特尔已收购Ineda Systems,剑指独显;...

关注并标星星CSDN云计算每周三次&#xff0c;打卡即read更快、更全了解泛云圈精彩newsgo go go 大家好&#xff01;偶是要闻君。伴随着汤圆节“落幕”&#xff0c;过年的喜庆正式进入尾声&#xff0c;本周过半&#xff0c;鼓足精神工作啦&#xff01;文/要闻君据了解&#xff0…

React之函数式组件使用props

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>3_函数式组件使用props</title> </head> <body> <!-- 准备好一个容器 --> <div id"test1"></div> <div id"te…

2019年中国IT市场趋势热点

戳蓝字“CSDN云计算”关注我们哦&#xff01;本文转载自公众号&#xff1a;中桥调研咨询向数字化转型已经深入人心&#xff0c;在数字经济下&#xff0c;IT架构正在向以数字为核心转变&#xff0c;云计算的普及和多元化趋势驱动了人工智能和物联网的快速发展&#xff0c;而两者…

React之jsx小练习

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>jsx小练习</title> <style> .title{ background-color: orange; width:200px; } </style> </head> <body> <!-- 准备好一个容器 --&…