当前位置: 代码迷 >> C语言 >> [求助]我想将得到的文件名用一个数组存起来为什么没法实现?谢谢。
  详细解决方案

[求助]我想将得到的文件名用一个数组存起来为什么没法实现?谢谢。

热度:171   发布时间:2007-08-01 14:47:10.0
[求助]我想将得到的文件名用一个数组存起来为什么没法实现?谢谢。

我想将得到的文件名用一个数组存起来为什么没法实现?谢谢。

#include<stdio.h>
#include<dir.h>
int main(void)
{
struct ffblk ffblk;
int done,i=0,j;
char *p[20];
clrscr();
printf("Directory listing of *.* is:\n");
done=findfirst("*.*",&ffblk,0);
while(!done)
{ p[i]=ffblk.ff_name;
printf("%s\t",p[i]);
i++;
printf("%s\n",ffblk.ff_name);
done=findnext(&ffblk);
}
j=i;
printf("\n\n");
for(i=0;i<j;i++)
printf("%s\n",p[i]);

return 0;
}

搜索更多相关的解决方案: 文件名  ffblk  int  done  

----------------解决方案--------------------------------------------------------
给个说法阿?
----------------解决方案--------------------------------------------------------
#include<stdio.h>
#include<string.h>
#include<dir.h>
int main(void)
{
struct ffblk ffblk;
int done,i=0,j;
char *p[20];
clrscr();
printf("Directory listing of *.* is:\n");
done=findfirst("*.*",&ffblk,0);
while(!done)
{
strcpy(p[i],ffblk.ff_name);
printf("%s\t",p[i]);
i++;
printf("%s\n",ffblk.ff_name);
done=findnext(&ffblk);
}
j=i;
printf("\n\n");
for(i=0;i<j;i++)
printf("%s\n",p[i]);
getch();
return 0;
}

----------------解决方案--------------------------------------------------------

谢谢先。但我用tc编译还是出现了问题。


不知道怎么出现这么多东西。我的程序结果是这样。

我再看看这两句话的不同。
由衷地感谢。

----------------解决方案--------------------------------------------------------
“p[i]=ffblk.ff_name;”与“strcpy(p[i],ffblk.ff_name)”有什么不同?
用第一个语句,能实现第一次输出,第二次输出数目是正确的。内容全是最后一个。
不理解。高手再麻烦一下吧。

----------------解决方案--------------------------------------------------------
  相关解决方案