C实现Linux下的echo函数命令[笔记]
时间:2006-11-23 来源:nick19842000
重新看了一遍谭老师的C语言。觉得书中有些代码还是很经典的。
如 Linux下的echo命令,是实现“参数回送”,Linux终端输入
#echo hello world!
hello world!
用C实现的代码如下:
/*echo.c*/
main(int argc,char *argv[])
{
while(--argc>0)
printf("%s%c",*++argv,(argv>1)? '':'\n');
} 也可以用如下代码: /*echo.c*/ main(int argc, char *argv [ ])
{int i;
for(i=1;i<argc;i++)
printf("%s%c",argv[i],(i<argc-1)?'':'\n');
} 这样,在MSDOS下输入: C:\>echo I am Nick. 将输出: I am Nick. 注:main函数中,argc存放包括文件名在内的字符串的个数,如上的echo I am Nick.则argc=4; 而argv[]则指向这些字符中的存放的地址。上例中,则argv[3]指向"Nick",而argv[3][0]="N"。
{
while(--argc>0)
printf("%s%c",*++argv,(argv>1)? '':'\n');
} 也可以用如下代码: /*echo.c*/ main(int argc, char *argv [ ])
{int i;
for(i=1;i<argc;i++)
printf("%s%c",argv[i],(i<argc-1)?'':'\n');
} 这样,在MSDOS下输入: C:\>echo I am Nick. 将输出: I am Nick. 注:main函数中,argc存放包括文件名在内的字符串的个数,如上的echo I am Nick.则argc=4; 而argv[]则指向这些字符中的存放的地址。上例中,则argv[3]指向"Nick",而argv[3][0]="N"。
相关阅读 更多 +