main(argc,argv[])
每个C语言程序都必须有一个称为main()的函数,作为程序启动的起点。当执行程序时,命令行参数(command-line argument)(由shell逐一解析)通过两个入参提供给main()函数。第一个参数int argc,表示命令行参数的个数。第二个参数char *argv[],是一个指向命令行参数的指针数组,每一参数又都是以空字符(null) 结尾的字符串。第一个字符串,亦即argv[0]指向的,(通常)是该程序的名称。argv中的指针列表以NULL指针结尾(即argv[argc]为NULL)。
argv[0]包含了调用程序的名称,
使用main(int argc,char *argv[]) == main(int argc,char **argv)的基本操作是linux编程的最基本的一步,在windows下也是exe脱离IDE运行的必学技能,程序编译成功之后,在cmd下,使用参数输入来运行程序,自己控制程序参数的输入来测试和运行程序。
int argc代表输入参数的个数,英文全名arguments count,以空格来计数,程序名(*.exe)是为第一个参数。
char *argv[]以字符数组的方式储存参数内容,英文全名arguments vector,argv[1]代表程序名。
下面的程序演示argc和argv的使用:
#include <stdio.h>int main(int argc, char ** argv) {int i;for (i=0; i < argc; i++)printf("Argument %d is %s./n", i, argv[i]);return 0; }
假如上述代码编译为hello.exe,那么运行
hello.exe a b c d e
将得到
Argument 0 is hello.exe. Argument 1 is a. Argument 2 is b. Argument 3 is c. Argument 4 is d. Argument 5 is e.
运行
hello.exe lena.jpg
将得到
Argument 0 is hello.exe. Argument 1 is lena.jpg.方法2. 项目——属性——配置属性——调试——命令参数,设置命令参数就可以传入 http://www.cnblogs.com/rainbow70626/p/5595454.html
转载于:https://www.cnblogs.com/loanhicks/p/6175644.html
main(argc,argv[])相关推荐
- int main(argc,*argv)中argc,argv的相关说明
说的特别清楚明白,适用于代参的程序运行: https://www.cnblogs.com/linshui91/archive/2010/09/29/1838762.html
- main函数的参数-argc,argv介绍
在main函数的定义形式中,会涉及到argc,argv以及envp参数(参考上一篇:C程序main函数https://blog.csdn.net/m0_52892985/article/details ...
- glutInit(argc, argv); glut初始化API
int main(int argc, char **argv){} int argc 和 char **argv 传递 到 你的自定义函数,再传递给 glutInit(). ------------- ...
- argc, argv 到底是干啥用的?
文章目录 前言 分析 初探类型 文件IO 多个文件IO 自定义格式 总结 前言 在旧版本的IDE中新建一个C/C++源文件,你可能会看到这种样子的main函数 int main(int argc,ch ...
- argc,**argv
main函数的参数argc,argv用于 取得命令行参数 int main(int argc,char **argv) 或 int main(int argc, char *argv[]) argc是 ...
- 关于C++中的argc,argv的使用方法
想必很多人都好奇C++中的int argc 和 char **argv .那我们今天来看看argc,argv的使用方法 1,int argc argc 实际上指命令行接受的参数个数, 比如说,这个程序 ...
- CMake中的ARGC ARGV 和ARGN参数意义
编写或者查看一些开源cmake文件中经常遇到在宏(macro)和函数中经常会遇到ARGC ARGV 和ARGN等参数,该参数为cmake中专用变量,分别表示宏或者函数参数中的特殊意义. ARGC AR ...
- argc,argv,argv[0]用法详解
http://www.site.uottawa.ca/~lucia/courses/2131-05/labs/Lab3/CommandLineArguments.html You'll notice ...
- c语言中命令行参数argc,argv[]详解
argc 是 argument count的缩写,表示传入main函数的参数个数: argv 是 argument vector的缩写,表示传入main函数的参数序列或指针,并且第一个参数argv[0 ...
- php argc argv,argc和argv怎么使用
argc即为argument count的缩写,表示传入main函数的参数个数: argv即为argument vector的缩写,表示传入main函数的参数序列或指针,并且第一个参数argv[0]一 ...
最新文章
- python的快速入门-Python如何快速入门的基础知识
- java 网络 io流_【015期】JavaSE面试题(十五):网络IO流
- get方法报空指针_智能指针shared_ptr踩坑笔记
- 到底什么是P问题,NP问题,NPC问题,NP-hard问题?什么是规约(或约化)?
- linux之autoconf/automake
- 80486微型计算机的字长,80486,80586等是什么样的电脑?
- 浅谈webpack打包原理
- 字体选择_Word文档中的字体批量选择与更改,查找替换功能必杀技
- 怎么用计算机输入开七次方根,计算器开根号怎么按
- DDR3的容量计算方法
- css层叠实例,css 层叠与z-index的示例代码
- 获取驱动失败Java连接数据库,好哀伤,java连接sql数据库加载驱动就是失败了
- 【云计算的1024种玩法】搭建个人博客
- CEPH HEALTH错误(二):HEALTH_WARN mds cluster is degraded
- 免费简历,ppt模板
- 原生JS javascript解除绑定事件 JS删除绑定事件
- ZigBee 3.0实战教程-Silicon Labs EFR32+EmberZnet-2-01:芯科的硬件解决方案EFR32
- 【YOLOv7/YOLOv5系列改进NO.51】融入多分支空洞卷积结构RFB-Bottleneck改进PANet构成新特征融合网络
- 【论文写作】如何画出好看的图表
- linux把ip加入黑名单,Linux防火墙(iptables)之黑名单
热门文章
- ios 添加block 类别_ios block是什么数据类型?
- 怎么打包图片_房产也能批发!澳村庄40栋房打包出售,总价$175万,买了变村长!...
- JUC与JVM并发编程学习笔记02
- python实现求解给定整数的质因数
- android python .xlsx_python读写xlsx
- shell 除法保留n位小数
- a^x ≡1(mod n) Ord_n(a)=x什么意思
- 计算机网络第三版周舸答案,计算机网络技术基础第3版周舸第一章节计算机网络基础知识课件教学.ppt...
- 相继平均法matlab代码_matlab实现不同平均数的求法
- java中nul值的处理