c语言程序的命令行输入,C程序获取命令行参数
命令行参数
命令行界面中,可执行文件可以在键入命令的同一行中获取参数用于具体的执行命令。无论是Python、Java还是C等等,这些语言都能够获取命令行参数(Command-line argument,与命令同一行中的附加项)。
C编写的可执行文件的程序入口函数是main函数,因此C程序真正读取命令行参数的就是main函数。
例:
#include
/*
* test.c 编译后产生可执行文件test.exe或test.out,程序来源于C Primer Plus第十一章
*/
int main(int argc,char *argv[]) {
int count;
printf("The command line has %d arguments :\n",argc-1);
for (count = 1; count < argc; ++count) {
printf("%d: %s\n",count,argv[count]);
}
return 0;
}
我们在test.exe所在文件夹打开命令行窗口,键入test I love you,会输出:
The command line has 3 arguments:
1: I
2: love
3: you
C标准规定main函数作为程序入口,可以没有参数,也可以有两个参数。两种参数的情况下,第一个参数argc是命令行中的字符串个数,字符串的分隔按空格来判断,上例中总共输入了4个字符串,分别是 test, I, love, you。第二个参数argv是一个指向这些字符串的指针数组。命令行界面中输入的所有字符串被存储在这个数组中,可以用for循环遍历。第一个元素当然是命令的名称。当然,对于接受参数的main函数也可以用另一种声明:
inr main(int argc, int **argv)。argv是一个指向字符的指针的指针,本质上还是指向包含多个字符串的数组。
命令行界面允许使用双引号把多个单词识别成一个参数:
test "I love you."
这其中I love you.被认为是一个整体的参数。
从Win32程序中的主函数中获取命令行参数
在标准C或者Win32控制台程序的main函数中,它们都有两个参数:"argc" 和 "argv",如下所示: int main(int argc, char ...
【WPF】如何获取命令行参数
应用程序以 Main 方法为入口点,如果为 Main 方法指定一个 string[] 类型的参数,在程序运行时,这个参数会获取到传递给应用程序的命令行参数. 而 WPF 应用程序比较特殊,因为在VS中 ...
【Python学习 】Python获取命令行参数的方法
背景 最近编写一个python程序的时候,需要去获取python命令行的参数,因此这里记录下如何获取命令行参数的方法. 一.sys 模块 在 Python 中,sys 模块是一个非常常用且十分重要的模 ...
python获取命令行参数的方法(汇总)
介绍python获取命令行参数的方法:getopt模和argparse模块. python版本:2.7 一.getopt模块 主要用到了模块中的函数: options, args = getopt.g ...
MFC中获取命令行参数的几种方法
在MFC程序中,可以用以下几种方法来获取命令行参数. 为方便说明,我们假设执行了命令:C:\test\app.exe -1 -2 方法一 ::GetCommandLine(); 将获取到 " ...
go语言基础之获取命令行参数
1.获取命令行参数 示例: package main //必须 import "fmt" import "os" func main() { list := o ...
golang获取命令行参数
部署golang项目时难免要通过命令行来设置一些参数,那么在golang中如何操作命令行参数呢?可以使用os库和flag库. 1.golang os库获取命令行参数 os可以通过变量Args来获取命令 ...
[GO]获取命令行参数
package main import ( "os" "fmt" ) func main() { list := os.Args n := len(list) ...
python获取命令行参数
python获取命令行参数 主要是通过sys的argv列表来获取命令行内容,命令行的参数以空格分隔放到argv列表中. import sys if __name__ == "__main__ ...
随机推荐
Entity Framework实现多列排序
aList.OrderBy(a => a.WIndex).ThenBy(a=>a.KIndex) 类似sql:order by WIndex,KIndex
AutoMapper 使用实践
一. 使用意图 常常在开发过程中,碰到一个实体上的属性值,要赋值给另外一个相类似实体属性时,且属性有很多的情况.一般不利用工具的话,就要实例化被赋值实体B,然后再将实体A的字段一个个赋值给B的属性 ...
Groovy入门经典 随书重点
1 数值和表达式 1.1数值 整数是Integer类的实例 有小数部分的数值是BigDecimal类的实例 不同于java,没有基础数据类型 一切皆对象的概念重于java 1.2表达式 两个整数的除法 ...
netsh用法
netsh(Network Shell) 是一个windows系统本身提供的功能强大的网络配置命令行工具. 导出配置脚本:netsh -c interface ip dump > c:\inte ...
nvm配置
多版本安装方式 卸载已有的Node.js 下载nvm 在C盘创建目录dev 在dev目中中创建两个子目录nvm和nodejs 并且把nvm包解压进去nvm目录中 在install.cmd文件上面右键选 ...
使用Windows Service Wrapper快速创建一个Windows Service 如nginx
前言 今天介绍一个小工具的使用.我们都知道Windows Service是一种特殊的应用程序,它的好处是可以一直在后台运行,相对来说,比较适合一些需要一直运行同时不需要过多用户干预的应用程序,这一类我 ...
IE6 select穿透问题(div 定位无法遮盖select)!
此问题,早有耳闻,可是一直都没有亲身碰到过,也就没有过多的去在意这些问题. 这一回总算是见识到了ie的厉害.虽是在ie选项中大大的写着ie版本号是ie11 .可是有些部分确实走的ie6的内核.怪不得微 ...
NET-知识点:C#中Equals和==比较
第一.相等性比较 其实这个问题的的本质就是C#的相等比较,相等比较可以分两类: 1.引用相等性,引用相等性指两个对象引用均引用同一基础对象. 2.值相等性,值相等性指两个对象包含相同的一个或多个值,其 ...
empty、isset、is_null的比较
直接上代码 <?php $a=0; $b='0'; $c=0.0; $d=''; $e=NULL; $f=array(); $g='\0'; $h=' ';//space $i=true; $j ...
c语言程序的命令行输入,C程序获取命令行参数相关推荐
- 【Python语言基础】——Python 命令行输入
Python语言基础--Python 命令行输入 文章目录 Python语言基础--Python 命令行输入 一.Python 命令行输入 一.Python 命令行输入 命令行输入 Python 允许 ...
- c语言用命令行编译运行程序_使用C程序执行系统命令
c语言用命令行编译运行程序 Sometimes, we may need to execute Linux/Windows DOS commands through our C program. (N ...
- c语言程序命令行,ttyd(C语言编写的命令行程序) v1.3.1 免费版
ttyd是一个C语言编写的命令行程序,可以把任意命令行程序分享到网页上操作,可以看做是个网页版的远程终端,支持 Linux.macOS 系统,还可以运行在 OpenWrt 之类的嵌入式系统上. 功能特 ...
- Go语言的使用命令行程序
出于如下原因,程序员想创建命令行程序: 1.为创建能够定期自动运行的脚本. 2.为创建与系统中的文件交互的脚本. 3.为创建能够执行系统维护任务的脚本. 4.为避免设计图形用户界面这种无谓的开销. 在 ...
- Java黑皮书课后题第7章:*7.22(计算一个字符串中大写字母的数目)编写程序,从命令行输入一个字符串,然后显示字符串中大写字母的数目
7.22(计算一个字符串中大写字母的数目)编写程序,从命令行输入一个字符串,然后显示字符串中大写字母的数目 题目 题目描述 破题 代码 运行实例 题目 题目描述 7.22(计算一个字符串中大写字母的数 ...
- Java黑皮书课后题第7章:*7.21(整数求和)编写程序,从命令行输入不定数目的整数,然后显示它们的和
*7.21(整数求和)编写程序,从命令行输入不定数目的整数,然后显示它们的和 题目 题目描述 破题 代码 运行实例 题目 题目描述 7.21(整数求和)编写程序,从命令行输入不定数目的整数,然后显示它 ...
- Go语言程序的命令行参数
获取命令行参数是程序功能多样化的必要前提. 这个例子展示Go语言如何获得程序的命令行参数. Go语言程序: // echoarg project main.go package mainimport ...
- python输入正方形边长值、计算其面积_尝试修改列6.2编写命令行参数解析的程序,解析命令行参数所输入边长的值,计算并输出正方形的周长和面积。_学小易找答案...
[简答题] [单选题]ZigBee 中每个协调点最多可连接______个节点,一个ZigBee网络最多可容纳______个节点.( ) [资料题]DWord-Ans.pdf 索引和目录.pdf 完成效 ...
- .NET Core开发实战(第9课:命令行配置提供程序)--学习笔记
09 | 命令行配置提供程序:最简单快捷的配置注入方法 这一节讲解如何使用命令行参数来作为配置数据源 命令行配置(提供程序的)支持三种格式的命令 1.无前缀的 key=value 模式 2.双中横线模 ...
最新文章
- linux下的C语言开发 GDB的例子
- Exercise: Linear Regression
- js 层 分页显示选择用户名
- 使用Junit对Spring进行单元测试实战小结
- 干货集中营 ReactiveCocoa+RXSwift+MVVM
- 带你深入理解Java的IO到底是个啥
- 技术实践丨Prometheus+Grafana搭建HBase监控仪表盘
- Git合并最近的commit
- winform 拖动无边框窗体(调用Windows API)
- 控制Arduino的利器-Windows Remote Arduino
- 如何彻底删除或卸载迈克菲软件
- 球体弹性碰撞位置和速度计算算法
- 全国软件工程专业大学排名!你报考的大学排第几?
- matlab 混沌工具箱,matlab混沌工具箱
- 用“大数据”预防职务犯罪
- python中math函数_python中math模块函数
- Qt-qrc资源文件-rcc打包-程序调用-ZIP压缩和解压-安装程序制作参考
- TCP/IP-单播是如何实现的
- MySQL 学习笔记——基础 DQL 查询语言
- 忘记了电脑登陆密码,只记得PIN密码时可以登陆电脑怎么修改密码