实现把文件中内容读取到一个字符串中?
下面这样写运行有误(文件中的内容很短,小于100个字符时也运行异常),并且其长度事先定义为100也不合理,要怎么做比较合理呢?#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <stdlib.h>
void readdat(char *s,char *t)
{
FILE *fp;
char str[100];
int i;
fp=fopen(s,t);
if(fp=NULL)
{
printf("can't open the file");
exit(1);
}
i=0;
while(!feof(fp))
{
*(str+i)=fgetc(fp);
i++;
}
printf("%s",str);
}
void main()
{
readdat("in.txt","r");
}