execlp(buf,buf,( char * )0);execlp()这个函数我知道,会从PATH 环境变量所指的目录中查找符合参数file 的文件名, 找到后便执行该文件。但传进去的第一个参数是一个char型数组,并不是什么可执行文件,execlp怎么找得到这个数组并执行的?
http://www.fx114.net/qa-177-10962.aspx
我自己想明白了,第一个参数为“ls"时就是在系统里找相应文件,传buf字符数组的首地址就等价于传一个字符串