如何将一个文本文件一行一行的读到一个指针数组中。

hxy2003 2004-09-08 03:04:58
如何将一个文本文件一行一行的读到一个指针数组中。
这样为什么错啦,多谢
char *a[100];
if((pFile = fopen("c:\\project.grammar", "rt")) == NULL)
return ;
i=0;
while(!feof(pFile))
{
a[i]=(char *)malloc(200);
i++;
}
...全文
147 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
char *(a[100]);
if((pFile = fopen("c:\\project.grammar", "rt")) == NULL)
return ;
i=0;
while(!feof(pFile))
{
a[i]=(char *)malloc(200);
fgets(a,100,pFile);
i++;
}
zgy166 2004-09-08
  • 打赏
  • 举报
回复
int filesize = 0;
int count = 0;

if((pFile = fopen("c:\\project.grammar", "rt")) == NULL)
return ;

feek(pFile, 0, SEEK_END);
filesize = ftell(fp);
feek(pFile, 0, SEEK_SET);

a = malloc(filesize );
while(!feof(pFile))
{
count = fgets(a,100,pFile);
a += count;
}
hxy2003 2004-09-08
  • 打赏
  • 举报
回复
a[i]=(char *)malloc(200);
这一行就错啦。。。
根本还没有到读文本的时候就错啦啊。多谢
sunlu_eric 2004-09-08
  • 打赏
  • 举报
回复
文本文件一行是250吧!!!
  • 打赏
  • 举报
回复
对不起写错了。
char *a[100];
if((pFile = fopen("c:\\project.grammar", "rt")) == NULL)
return ;
i=0;
while(!feof(pFile))
{
a[i]=(char *)malloc(200);
fgets(a,100,pFile);
i++;
}
  • 打赏
  • 举报
回复
你没有读文件!
fgets(pFile,a,100);

69,368

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧