Linux:命令行参数

ops/2024/9/24 11:27:41/

目录

一、命令行参数是什么?

二、命令行参数作用

三、命令行参数如何传递给main函数?


一、命令行参数是什么?

C语言中的main函数,我们发现既可以带参数,也可以不带参数。带参数的main函数如下:

参数为一个整数argc,一个字符指针数组argv

这些参数是什么呢?agrc是agrv数组的元素个数;argv存放的是命令行输入的内容,以空格为分割

当我们输入./test2.exe执行程序时,输出结果是./test2.exe

当我们在./test2.exe后加上不同的字符后,其也会跟着输出

在命令行中输入,最终作为参数传给main函数,这就是命令行参数

二、命令行参数作用

我们在命令行中输入的内容,都会被当作参数传给main函数,这有什么用处呢?

我们所使用的Linux系统命令,例如ls -l,ls -d等,通过输入不同的选项实现不同的功能,其就是通过命令行参数来实现的

三、命令行参数如何传递给main函数?

在命令行中输入的数据,是如何作为参数传递给main函数的呢?

已知:子进程可以访问父进程的数据

Linux系统中通过命令行执行的程序,都是命令行解释器bash的子进程。我们在命令行中输入的数据默认都是输入给其父进程bash的,bash进程将命令行参数形成一个字符串数组,结尾放NULL,然后传递给main函数


http://www.ppmy.cn/ops/110723.html

相关文章

什么是单元测试?怎么做?

🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 一、什么是单元测试? 单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。至于“单元”的大小…

大数据时代下会计数字化的思考与建议

引言 随着信息技术的飞速发展,大数据已成为推动社会进步和经济发展的新引擎。会计行业作为经济活动的重要组成部分,其数字化转型已成为必然趋势。本文旨在探讨大数据时代下会计数字化的现状、挑战以及未来的发展方向,并提出相应的思考与建议。…

常用环境部署(十八)——CentOS7搭建DNS服务器

一、安装Bind服务器软件并启动 1、安装Bind服务 yum -y install bind bind* 2、 启动服务 systemctl start named 3、开机自启动 systemctl enable named 二、查看named进程是否正常启动 1、检查进程 ps -eaf|grep named 2、检查监听端口 ss -nult|grep :53 三、关闭…

146-Web权限维持各语言内存马Servlet-api类Spring类Agent类

参考 FlowUs 息流 - 新一代生产力工具 Webshell内存马,是在内存中写入恶意后门和木马并执行,达到远程控制Web服务器的一类内存马,其瞄准了企业的对外窗口:网站、应用。但传统的Webshell都是基于文件类型的,黑客可以利…

系统架构设计师【真题论文】: 论企业集成平台的技术与应用(包括解题思路和经典范文)

更多内容请见: 备考系统架构设计师-核心总结索引 文章目录 真题题目(2015年试题4)解题思路精品范文赏析摘要正文总结真题题目(2015年试题4) 题目:论企业集成平台的技术与应用 企业集成平台是一个支持复杂信息环境下信息系统开发、集成和协同运行的软件支撑环境。它基于各…

Docker容器创建时,无法访问镜像源:Could not connect to archive.ubuntu.com:80

1.问题描述 当基于dockerfile创建容器时,遇到Could not connect to ...、Failed to fetch ...等异常时,大概原因是没有配置好容器创建所需的镜像源。这里以Ubuntu基础镜像源为例。 dockerfile内容 FROM ubuntu RUN apt update && apt install…

将 Parallels Desktop(PD虚拟机)安装在移动硬盘上,有影响吗?

当我们谈论在移动硬盘上安装 Parallels Desktop(简称PD虚拟机)及其对性能的影响时,特别是在运行如Unigraphics这样的资源密集型软件时,用户需要在便携性与性能之间找到最佳平衡。本文将深入探讨PD虚拟机装在移动硬盘有影响吗&…

web基础之信息泄露

1、目录遍历漏洞 (1)原理:本质是没有过滤用户输入的 ../ 相关的目录跳转符,使得攻击者通过目录跳转符来遍历服务器中的任意文件。 (2)题解: eg:根据提示遍历网页目录信息,会在某一个…