Latepossible 2021-01-07 12:56 采纳率: 100%
浏览 33
已采纳

读取txt文件到结构体数组,当读取的txt文件很多行时括号里该怎么填啊,求大神解惑?

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct user_rating
{
    char userID[];
    char movieID[];
    char rates[];
    
};

int main()
{
    FILE *fp=NULL;
    int i=0,j;
    struct user_ratings UR[];
    if((fp = fopen("user_ratings.txt","r")) == NULL)
    {
        printf("Can't open it");
        exit(EXIT_FAILURE);
    }
    
    while(!feof(fp))
    {
        fscanf(fp,"%d,%d,%f",&UR[i].userID,&UR[i].movieID,&UR[i].rates);
        i++;
    }
    
    j=i;
    for(i=0;i<j;i++)
    printf("%d,%d,%f\n",UR[i].userID,UR[i].movieID,UR[i].rates);
    fclose(fp);
    return 0;
 } 

 

  • 写回答

4条回答 默认 最新

  • 追逐时代的脚步 2021-01-07 20:06
    关注

    指针学过了吗?

    你可以通过获取文件内容的字节数,直接开辟那么大的内存空间,模拟结构体数组使用。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?