在C语言中实现echo功能是什么意思

在C语言中实现echo功能是什么意思,第1张

echo 是一个脚本命令。

它的基本格式为 echo "abcd" 就会在屏幕打印出来,

另外可以打印参数值 b=8 echo "b = $b" 会打印 b =8

你可以通过printf函数非常简单就可以实现

如Linux下的echo命令,是实现“参数回送”,Linux终端输入#echohelloworld!helloworld!用C实现的代码如下: /*echo.c*/main(intargc,char*argv[]){ while(--argc>0) printf("%s%c",*++argv,(argv>1)?'':'\n')} 也可以用如下代码: /*echo.c*/ main(intargc,char*argv[]) {inti for(i=1i<argci++) printf("%s%c",argv,(i<argc-1)?'':'\n') } 这样, ...

这个就是C语言的命令行参数和main函数之间的参数转换关系的详细解释了。

1、首先明确一下我们编译出来的可执行程序

windows编译出来的可执行程序扩展名为exe,比如test.ext,楼主例子中的echo.exe,运行程序的时候exe可以省略。

我们要执行一个程序,第一个肯定是要写上程序的名字,比如echo.exe或者echo,然后后面跟参数,比如楼主程序里面的hellow, world,就是2个参数,以空格分开,第一个参数是hellow,,第二个参数是world

2、然后再看一下程序是如果将我们写的参数传递给可执行程序的。

main函数的参数是两个int argc,char *argv[],argc就是参数的个数,argv数组就是具体的参数了。

程序执行时,会根据我们输入的个数来决定给main函数传递什么东西。按照空格分开,每一个输入就是一个参数(注意:也要包含程序本身的名字,也是一个参数)

即当我们输入echo hellow, world的时候,main函数接收到3个参数,echo,hellow,和world,这个时候argc就等于3,argv[0]是echo,argv[1]是hellow,,argv[2]world。

3、估计楼主疑惑的就是可执行程序的名字为什么也是一个参数,这个是C语言的规范,记住就行了哈。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/7948924.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存