博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++中 int main(int argc, char **argv) 命令行传递参数
阅读量:6917 次
发布时间:2019-06-27

本文共 1101 字,大约阅读时间需要 3 分钟。


C++中,比较常见的是不带参数的主函数int main(),如果使用命令行执行程序,主函数也可以接收预先输入的参数,形式如下。

int main(int argc,char **argv)

  • argc:命令行参数个数(Argument Count)
  • argv:命令行参数向量(Argument Vector)

例如,我们在命令行输入Project.exe string1 string2 string3时,argc=4,表示输入的参数个数是4,分别是Project.exestring1string2string3

argv是一个字符串数组,对应存储这4个字符串,即argv[0] = "Project.exe", argv[1] = "string1", argv[2] = "string2", argv[3] = "string3"。因此可以在主函数中,后续通过argc和argv获取参数信息。

int main(int argc,char **argv)也可以写成int main(int argc, char *argv[])。

示例

假设要通过命令行接收一串数字,程序输出这串数字的和。

#include 
#include
// int main(int argc, char *argv[])int main(int argc, char **argv) { int sum = 0; for (int i = 1; i < argc; ++i) { int num_i = atoi(argv[i]); // 字符串转换成整数 sum += num_i; } std::cout << sum; return 0;}

编译程序,生成.exe文件,windows环境下,可以进入cmd界面,通过cd指令进入exe文件的所在目录。

比如我这里所生成的Project.exe文件路径为 E:\C++ Projects\MediaTek\03 数列求和\Project1\Debug,在cmd界面,先输入e:,然后回车,进入E盘,再输入cd E:\C++ Projects\MediaTek\03 数列求和\Project1\Debug,回车,从而进入exe文件的所在目录。

接下来输入Project1.exe 11 12 13 14,回车,结果显示为50。

1397676-20180729215908952-1525389983.png

转载于:https://www.cnblogs.com/Ran-Chen/p/9387899.html

你可能感兴趣的文章
textarea的内容改变,绑定的model却没更新
查看>>
读 arale 源码之 attribute 篇
查看>>
Java实战之文章翻译:Better Java —— 教你如何编写现代化的Java程式
查看>>
洛谷 P1880 石子合并
查看>>
3年收10亿,普陀山悄悄改名重启IPO
查看>>
一文弄清物联网的OTA
查看>>
Unity3D开发游戏世界天空盒
查看>>
智能媒体管理(IMM)视频分析中明星识别介绍
查看>>
【机器学习PAI实战】—— 玩转人工智能之商品价格预测
查看>>
条码打印软件如何设置双排标签纸尺寸
查看>>
eclipse中使用hibernate连接mysql
查看>>
k8s 面向应用开发者的基础命令
查看>>
RDS 5.7的物理备份恢复到本地的方法
查看>>
C# Winform快速开发平台与软件配置平台
查看>>
Kubernetes 新概念 “Initializers”解析(上):能让你为集群编写插件的新模型
查看>>
sql server 高可用故障转移(完结)
查看>>
MSSQL sql server order by 1,2 的具体含义
查看>>
蚂蚁的开放:想办法摸到10米的篮筐
查看>>
WPF 线程:使用调度程序构建反应速度更快的应用程序
查看>>
使用Docker(Mac)搭建 Nginx/Openresty - Kafka - kafkaManager
查看>>