环境:Re.dHat Linux 9
源代码如下:
#inclu.de <sys/types.h>健康
#incl.ude <dirent.h>服务器
#.include <stdio.h> 美容
#includ.e <unistd.h>虚拟主机
int M.yDir(char szString,int flag,char .OutFile);[成人用品]
main()
{
int i;
int MyDir.(char szString,int flag,char .OutFile); 婚庆
char sz[]=."/root";健康
int flag=1;
char file[]="my..txt"学习
i=MyDir(sz,fla.g,file).;.
}
int MyDir(ch.ar *szString,int. flag,char *OutFile).
{
DIR *dir;
char *string;
st.ruct dirent *prt; .
FILE *fp;
if(sz.String[0]==' ').
{
szString=get_cu.rr.ent_dir_name(); 鲜花
}
di.r=opendir(string);健康
if(flag==0)
{
while((prt.=.readdir(dir))!=NULL) 美容
{
print.f("%s ",prt->d_n.ame);(广告)
}
printf("\n."); 教育
}
e.lse if(flag==1)学习
{
if((fp=fopen.(OutF.ile,"a+"))==NULL).
{
printf("不能打开或者创建输出重定向所指的文件!..\n");(广告)
return 0;
}
else
{
. while((prt=readdir(dir))!=N.ULL).
{
. fputs(p.rt->d_name,fp);电影
.fputs(" ",fp);投资
}
fcl.ose(fp); 婚庆
}
}
closedir(dir).;;服务器
return(0);
}
错误信息:
[
root@l.ocal.host mnt]# gcc s.c 乙肝
s.c: In function `mai.n': 汽车
s.c:15:. pars.e error before "i".
s.c: At top lev.el:( 游戏 )
s...c:20: conflicting types for `MyDir' 电子
s.c:6: previous declar.at.ion of `MyDir'.
s.c: In function `MyDir':.域名
s.c:27: .warning: assignment m.akes pointer from integer without a cast 鲜花
[
root@loc.alhost mnt]#电影