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函数

相关推荐
赴3351 分钟前
Xftp8传输文件与 Linux 系统 Anaconda 安装
linux·anaconda·xftp
源远流长jerry1 小时前
STM32之MCU和GPIO
linux·c++·stm32·单片机·嵌入式硬件
华纳云IDC服务商1 小时前
服务器Linux防火墙怎样实现访问控制
linux·运维·服务器
胡桃不是夹子1 小时前
linux系统装google chrome,amd64
linux·运维·chrome
Johny_Zhao9 小时前
基于 Docker 的 LLaMA-Factory 全流程部署指南
linux·网络·网络安全·信息安全·kubernetes·云计算·containerd·yum源·系统运维·llama-factory
Wy_编程10 小时前
Linux文件相关命令
linux·运维
Viking_bird10 小时前
centos 7.5 + Hadoop 3.2.4 集群搭建
linux·运维·服务器·hadoop·centos
wdxylb11 小时前
云原生俱乐部-RH134知识点总结(1)
linux·云原生
黑客影儿11 小时前
Kali Linux 环境中的系统配置文件与用户配置文件大全
linux·运维·程序人生·安全·网络安全·系统安全·学习方法
岚天start11 小时前
Linux系统网络排查工具总结
linux·运维·网络·监控·扫描·连通性·流量