C++编程语言中接收用户输入参数的方法
本文主要介绍在 C++ 编程语言中,接收用户输入参数的具体方法。
接收用户输入参数的程序,在 Linux 操作系统中很常见,一些常见的命令,都会需要接收用户输入的参数,并根据这些参数进行不同的操作。
1 示例程序
在这里展示一个的示例程序,该程序接收输入的三个参数,并将这三个参数打印出来。
示例程序的代码(rec_user_arg.cpp)内容如下:
#include <iostream>
#include <string.h>using namespace std;void ShowUsage()
{cout << "Usage : rec_user_arg <--name=your name> [Option]" << endl;cout << "Options :" << endl;cout << " --name=your name Your name, this option MUST be given." << endl;cout << " --occupation=your occupation Your occupation, such as paladin." << endl;cout << " --camp=your camp Your camp, such as alliance." << endl;cout << " --help Print this help." << endl;return;
}int main(int argc, char *argv[])
{// 如果用户没有输入参数,则提示错误信息并退出if (argc < 2){cout << "No arguments, you MUST give an argument at least!" << endl;ShowUsage();return -1;}int nOptionIndex = 1;string strName;string strOccupation;string strCamp;while (nOptionIndex < argc){// 获取用户姓名if (strncmp(argv[nOptionIndex], "--name=", 7) == 0){strName = &argv[nOptionIndex][7];}// 获取用户职业else if (strncmp(argv[nOptionIndex], "--occupation=", 13) == 0){strOccupation = &argv[nOptionIndex][13];}// 获取用户阵营else if (strncmp(argv[nOptionIndex], "--camp=", 7) == 0){strCamp = &argv[nOptionIndex][7];}// 显示帮助信息else if (strncmp(argv[nOptionIndex], "--help", 6) == 0){ShowUsage();return 0;}else{cout << "Options '" << argv[nOptionIndex] << "' not valid. Run '" << argv[0] << "' for details." << endl;return -1;}nOptionIndex++;}cout << "Name is: " << strName << endl;cout << "Occupation is: " << strOccupation << endl;cout << "Camp is: " << strCamp << endl;return 0;
}
编译并执行上述代码,结果如下:
1. 用户没有输入参数时:
2. 用户输入了两个参数时:
3. 用户输入了错误的选项时:
C++编程语言中接收用户输入参数的方法相关推荐
- linux脚本外输入参数,shell 脚本中关于用户输入参数的处理
1.命令行参数 向shell脚本传递数据的最基本方式是使用命令行参数. (1) 读取参数 读取输入的参数的变量为位置参数,位置参数通过标准数字表示, 其中$0为程序名称,$1为第一个参数,$2为第二个 ...
- PHP-企业微信二次开发-接收用户输入消息内容并响应相关业务逻辑
企业微信接收用户输入消息内容并响应 前面一节说明了企业微信设置API接收,服务器回调配置的一些说明.这一节我们接着后面的内容来讲下在企业微信中,如何通过应用,接收用户消息. 业务逻辑:企业微信向回调地 ...
- 深度解析Go中的用户输入获取(fmt.Scan fmt.Scanln fmt.Scanf),含多项测试及源码解读
Go中的标准输入处理及测试 前言 fmt.Scan, fmt.Scanln, 和 fmt.Scanf 是 Go 语言标准库中用于读取用户输入的函数.在使用过程中,我发现了他们不符合预期的表现,于是进行 ...
- iOS 11开发教程(十七)iOS11应用视图之使用按钮接收用户输入
iOS 11开发教程(十七)iOS11应用视图之使用按钮接收用户输入 在iOS中提供了很多的控件以及视图来丰富用户界面,对于这些视图以及控件我们在上一章中做了简单的介绍.本章我们将详细讲解这些视图. ...
- Xamarin iOS教程之使用按钮接接收用户输入
Xamarin iOS教程之使用按钮接接收用户输入 Xamarin iOS使用按钮接接收用户输入 按钮是用户交互的最基础控件.即使是在iPhone或者iPad中,用户使用最多操作也是通过触摸实现点击 ...
- CMD命令行接收用户输入信息
CMD命令行接收用户输入信息 可以把下面的代码块Copy到一个以bat为后缀的文件中,双击就可以看到效果 ********************************************** ...
- LSTM模型在问答系统中的应用 2017-06-27 21:03 在问答系统的应用中,用户输入一个问题,系统需要根据问题去寻找最合适的答案。 1:采用句子相似度的方式。根据问题的字面相似度选择相似度最
LSTM模型在问答系统中的应用 2017-06-27 21:03 在问答系统的应用中,用户输入一个问题,系统需要根据问题去寻找最合适的答案. 1:采用句子相似度的方式.根据问题的字面相似度选择相似度最 ...
- 前端工具-Yeoman模板 + 接收用户输入
开门见山 在前端工具-自定义generator文章中,介绍了如何自定义generator模块,以及生成对应的文件,如果是一个接一个写文件的话比较费力,好在我们有模板语法通过模板语法,大大提高了效率 模 ...
- 接收用户输入的一个5位数,求个位数、十位数、百位数、千位数、万位数的和
题目: 接收用户输入的一个5位数,求个位数.十位数.百位数.千位数.万位数的和. /常规方法/// 12345 您输入的数万位是:1,千位是:2,百位是:3,十位是:4,个位是:5. 各位的和为:15 ...
- 编写程序实现比萨制作。需求说明编写程序,接收用户输入的信息,选择需要制作的比萨。可供选择的比萨有:培根比萨和海鲜比萨。
面向对象继承封装多态经典案例: 编写程序实现比萨制作.需求说明编写程序,接收用户输入的信息,选择需要制作的比萨.可供选择的比萨有:培根比萨和海鲜比萨. 实现思路及关键代码 1)分析培根比萨和海鲜比萨 ...
最新文章
- 4行代码,让app自动化框架支持 webview 混合应用操作
- oracle 分列,SQL 问题 如何分列
- 7.MATLAB变量——矩阵操作二
- elk 搜索 语法_ELK从入门到还未精通(二)——ElasticSearch上篇
- C++ Opengl 变形实例源码
- iOS常用的存储方式介绍
- 微软张宏江出任金山CEO 求伯君正式退休
- 倪光南院士:云计算发展须和云安全同步推进
- 云智慧获 D 轮数 2500 万美元投资:全力推动智能运维落地
- Random Forests预测森林植被类型
- 来吧,我和你聊聊操作系统
- Week 1——Machine learning by Pro.Andrew Ng (cousera)——notebook
- android7.1刷supersu,安卓怎么刷SuperSU 安卓系统刷入超级授权SuperSU Pro方法
- 谷歌表格_如何计算Google表格中的空白或空单元格
- vue+vue-ueditor-wrap+秀米
- MSSQLSERVER 2019修改数据库文件存放路径的简单实现
- oracle 建分区索引_Oracle的分区表和Local索引创建与维护
- 会声会影2020秘钥视频编辑制作使用教程
- NEO4J实战之《阿丽塔战斗天使》
- Windows下安装Redis教程