Linux进程(六)命令行参数

命令行参数

运行结果:

命令行参数概念

  1. 定义:程序在命令行启动时,由用户输入的、用于向程序传递额外信息的字符串。

  2. 传递方式:通过 main 函数的两个特殊参数接收:

  • argc :参数计数(argument count),表示参数的总个数,是一个整数。

  • argv :参数向量(argument vector),是一个字符指针数组,每个元素指向一个参数字符串。

  1. argv 结构:
  • argv[0] 固定指向程序自身的名称。

  • argv[1] 到 argv[argc-1] 依次指向用户输入的各个参数。

  • argv[argc] 是一个空指针 NULL ,作为数组的结束标记。

  1. 参数解析:命令行输入的一行文本,由 shell(命令行解释器)按空格进行分割,生成多个字符串,这些字符串即为命令行参数。

  2. 特殊处理:若要传递包含空格的字符串作为单个参数,需使用引号将其包裹,shell 会将引号内的内容视为一个整体。

相关推荐
数智化管理手记43 分钟前
精益生产中的TPM管理是什么?一文破解设备零故障的密码
服务器·网络·数据库·低代码·制造·源代码管理·精益工程
Vect__1 小时前
深刻理解进程、线程、程序
linux
w6100104662 小时前
CKAD-2026-Ingress
运维·k8s·ckad
@insist1233 小时前
网络工程师-生成树协议(STP/RSTP/MSTP)核心原理与应用
服务器·开发语言·网络工程师·软考·软件水平考试
末日汐3 小时前
传输层协议UDP
linux·网络·udp
zzzsde5 小时前
【Linux】库的制作和使用(3)ELF&&动态链接
linux·运维·服务器
CQU_JIAKE5 小时前
4.3【A]
linux·运维·服务器
AI周红伟5 小时前
OpenClaw是什么?OpenClaw能做什么?OpenClaw详细介绍及保姆级部署教程-周红伟
大数据·运维·服务器·人工智能·微信·openclaw
Elastic 中国社区官方博客5 小时前
当 TSDS 遇到 ILM:设计不会拒绝延迟数据的时间序列数据流
大数据·运维·数据库·elasticsearch·搜索引擎·logstash
qing222222225 小时前
Linux中修改mysql数据表
linux·运维·mysql