C读取文件内容

C读取文件内容,第1张

程序你看看吧,有问题再问,满意请采纳:

无论你的文件里面有多少行数据,程序都会自动识别文件结尾

#include<stdio.h>

int main()

{

    int a1[600]  // 存的第一列数据,根据文件行数修改

    int a2[600]  // 存的第二列数据,根据文件行数修改

    int a3[600]  // 存的第三列数据,根据文件行数修改

    FILE*fp

    int k=0

    int i

     

    if((fp=fopen("test.in","r"))==NULL)    // 打开数据文件

    {

        printf("cant find the file!")

        return -1

    }

    while(!feof(fp)) 

    {

        fscanf(fp,"%d %d %d",&a1[k],&a2[k],&a3[k])

        k++

    }

        printf("读取文件后,数组内的结果显示:\n")

    for(i=0i<ki++) 

        printf("%d %d %d\n",a1[i],a2[i],a3[i])

 

    fclose(fp)

    return 0

}

art类型有两个指针成员,sizeof(art)==8。

在write函数中,你把两个指针写到文件里去了,而不是把指针所指的word(字符串)写到文件里去了。

所以fread(temp, sizeof(art), 1, fp)这一句把两个指针读到temp起始的空间里了,此时原来指针可能已经释放,所指内存不再由你支配。

你那样做有点像刻舟求剑,指针的确还指向那里,但字符串已经消失了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11494665.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存