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

相关推荐
小鹿软件办公19 分钟前
谷歌将在2026年第二季度为ARM64 Linux设备推出Chrome
linux·chrome
被遗忘的旋律.25 分钟前
Linux驱动开发笔记(二十六)——PWM(SG90驱动)
linux·驱动开发·笔记
赵民勇26 分钟前
gtk-update-icon-cache用法技巧总结
linux
wefg128 分钟前
【Linux】线程同步与互斥 - 2(线程同步/条件变量/基于阻塞/环形队列的cp模型/线程池/线程安全/读写锁)
linux·开发语言
小生不才yz34 分钟前
【Makefile 专家之路 | 基础篇】02. 初试锋芒:编写第一个 Makefile 与运行机制深度剖析
linux
Xu_youyaxianshen1 小时前
[特殊字符] Docker 小白极速入门笔记
linux·docker
getapi1 小时前
FinalShell 连接 CentOS 7 文件管理失败修复教程
linux·运维·centos
程序员学习随笔1 小时前
ext4 原理篇(三):日志子系统 Journal 深度剖析 —— 如何保障数据一致性?
linux·c++
OxyTheCrack1 小时前
【C++】一篇文章悲观锁与乐观锁与其思想在C++语言中的应用
linux·开发语言·数据库·c++·笔记
国产化创客1 小时前
OpenClaw在树莓派全流程安装部署
linux·人工智能·github·agi