argc参数和argv参数简述
初次见面,是计算机二级题里面
int main(int argc,char *argv)
听了一些别人的解释,有点懵懂:
argc是命令行中的参数个数,argv是一个指向char的指针数组,argv[0]指向存储第一个命令行参数的第一个字符,也就是说,如果你用输出语句对argv[0]进行输出,就可以得到这个指针的整个字符串。
cout<<argv[0]<<endl;
后来学习了关于命令行的命令使用呢,就对这样的参数有所明了。
相信大家用过cmd命令诸如:
cd C:\Windows
那么上面的命令是怎么实现的呢?cd其实算是个程序,它根据你后面的输入进行目录的查找并进行切换,结合上面的对两个参数(argc 和argv)的介绍,cd就是在命令行里的第一个参数,对应argv[0],后面"C:\Windows"就是第二个参数,对应argv[1],这两个就是两个字符串,这样的命令得出的argc值就是2。根据这两个参数的性质我们可以写一个简单的打招呼程序:程序名 (你要的输出名1) (你要的输出名2)…
得到的结果是:
Hello,输出名1!
Hello,输出名2!
…
Done.
程序如下:
#include <iostream>
#include <cstdlib> //for exit()
using namespace std;
int main(int argc, char *argv[])
{if (argc == 1){cout << "Usage: " << argv[0] << " name\n";long wait = 0;while (wait < 1000000000)wait++; //结束得慢一点exit(EXIT_FAILURE);}//如果输入只有程序名,就会输出上面的语句强调用法,然后关闭程序if (argc > 1){int i;for (i = 1; i < argc; i++)cout << "Hello," << argv[i] << "!\n";}cout << "Done.\n";system("pause");return 0;
}
上面的程序运行就是模拟命令行参数那种运行,你可以在编译软件的终端(如vscode的终端)输入命令
.\test Jack H Jane
输出就是这样的
Hello,Jack!
Hello,H!
Hello,Jane!
Done.
如果你想要省去前面的./呢,可以把程序放进你的系统变量path里,这样就可以类似cd命令那样,直接写程序名调用程序。
argc参数和argv参数简述相关推荐
- 关于int main( int argc, char* argv[] ) 中arg和argv参数理解
在示例程序中经常可以看到argc和argv这两个参数 ,在调试代码过程中遇到main函数为int main( int argc, char* argv[] ) 这种类型时往往会报错,或者是运行起来了但 ...
- 【OpenCV】OpenCV函数精讲之 -- argc 和argv参数
argc和argv这两个参数一般在用命令行编译程序时有用. 主函数main中变量(int argc, 插入 *argv[])的含义: int main(int argc, char *argv[]) ...
- c语言 argv参数,C程序的输入参数(int argc, char **argv)
无论是操作系统中的很多命令,还是很多科学计算程序,都会存在参数输入,形如: mybin -a10 -b100.0/23.0 infile 在C语言中,主要通过main函数的输入参数int argc与c ...
- java的argv_关于main(int argc,char *argv[])里面参数的说明
main(int argc,char *argv[ ]) argv为指针的指针 argc为整数 char **argv or: char *argv[] or: char argv[][] main( ...
- Pyqt5 获取命令行参数sys.argv
大家有没有注意到,很多软件都能接收第三方应用触发命令行参数,根据参数打开想要的效果. 在windows任务管理器调取命令行列,我们同样能看到进程中有好多是带有参数的. 现在,我们用Pyqt5 (Py3 ...
- 使用python命令行参数sys.argv 做bat脚本
首先要了解什么是命令行参数 1 2 import sys,os os.system(sys.argv[1]) #这个例子os.system接收命令行参数,运行参数指令, # cmd命令行带参数运行py ...
- main函数中argc的区别argv
main(int argc, char **argv) 中argc和argv的具体含义,以及操作系统如何处理它们. C/C++ codemain(int argc,char **argv) ar ...
- iOS-可变参数(不定参数)的用法
简介 一个可变参数函数是指一个函数拥有不定的参数,即为一个函数可接收多个参数.有时我们会遇到一些算术问题需要用到,比如是计算传入参数的总和,字符串的连接或是其它操作过程,我们在 OC 里也经常使用,最 ...
- int argc,char*argv[ ]的简洁解释
1.(arguments, argument counter(计数个数) 和 argument vector (矢量,带有方向的变量参数,也就是指针) argc命令行输入参数的个数 int main( ...
最新文章
- CSS3 background-image背景图片相关介绍
- rancher2.0安装mysql_高可用rancher集群搭建
- 读书笔记之如何阅读一本书
- 动态添加JavaScript
- 基于silerlight for embedd 视频播放器的之一的问题
- sts4创建spring项目_使用STS4新建springboot项目
- mysql query结果集_如何解决PHP使用mysql_query查询超大结果集超内存问题
- PHP建立和删除目录
- c 使用RTP协议发送视频数据
- git统计每个人的代码行数_程序员实用工具,推荐一款代码统计神器GitStats
- 十三、mysql 分区之 RANGE LIST
- 显示器3d测试软件,挑战3大游戏+3D电影!3D三屏环绕感官测试
- 放荡不羁SVG讲解与实战之Android高级UI
- 基于Java的课堂派应用--学生端
- ubuntu使用 ffmpeg 转换amr格式为mp3
- 20年代下的VR发展趋势
- strtok strtok_s strsep
- opencart之购物车立即购买
- 2004-2020年全国31省环境规制强度
- 一个屌丝脱屌的经历【转载】