Linux:命令行参数

目录

一、命令行参数是什么?

二、命令行参数作用

三、命令行参数如何传递给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函数

相关推荐
魂万劫1 小时前
如何在虚拟机VM上|Linux环境内安装windows
linux·运维·服务器·windows
序属秋秋秋1 小时前
《Linux系统编程之进程控制》【进程等待】
linux·c语言·c++·进程·系统编程·进程控制·进程等待
zfj3211 小时前
top 命令中的 wa (IO wait) 指标,理论上几乎完全是由磁盘IO(包括swap)引起的,而不是网络IO
linux·网络·top·iowait
Xの哲學2 小时前
Linux网卡注册流程深度解析: 从硬件探测到网络栈
linux·服务器·网络·算法·边缘计算
用户6135411460162 小时前
libicu-62.1-6.ky10.x86_64.rpm 安装步骤详解(麒麟V10系统)
linux
秋4273 小时前
防火墙基本介绍与使用
linux·网络协议·安全·网络安全·架构·系统安全
取加若则_4 小时前
深入解析Linux进程优先级机制
linux·服务器
点亮一颗LED(从入门到放弃)4 小时前
设备模型(10)
linux·服务器·前端
Web极客码4 小时前
使用VPS主机进行数据分析的主要优势
linux·windows·vps主机
九思x4 小时前
Linux 系统安装 JDK 17
linux·运维