shell程序传参和main函数传参的区别

Posted 代二毛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell程序传参和main函数传参的区别相关的知识,希望对你有一定的参考价值。

main函数示例代码

//示例代码
#include<stdio.h>

int main(int argc,char* argv[])
{
	int i = 0;
	printf("argc=%d\\n", argc);
	for(i=0; i<argc; i++)
	{
		printf("argv[%d]=%s\\n", i, argv[i]);	
	}

	return 0;
}


//输入:./a.out  11 22 33 
//输出:
argc=4
argv[0]=./a.out
argv[1]=11
argv[2]=22
argv[3]=33


shell程序示例代码

#源代码
echo "count:$#"
echo "$0"
echo "$1"
echo "$2"
echo "$3"
#输入:./text.sh  11 22 33
#输出:
count:3
./text.sh
11
22
33

解析:

从示例代码中可以看出,传入同样的参数,其实C程序和shell程序接收到的参数都是一样的,只是计数的方式不一样,具体差异参考示例代码的输入输出。这只是规则的不同,没有什么好讲的,记住就行。

以上是关于shell程序传参和main函数传参的区别的主要内容,如果未能解决你的问题,请参考以下文章

vue中route和router的区别 ——params传参和query传参的区别

第五章 shell函数的定义执行传参和递归函数

C语言中的值传参和引用传参是指啥?

vue-router传参的坑(query和params)

路由传参和路由守卫

函数中传值跟传参的区别?