c语言文件操作处理问题

为什么有29行就运行不出来 ,f2传进函数为什么printf不出来,求解答

img

img

1.

read里面的char a是静态数组,连续执行两个read实际上p1 和p2指向的内容是一样的 ,都是f2里的

第28行调用后p1里的数据是对的
第29行调用的时候 因为12行 int i=0
从0开始将静态数组中上一次的数据给覆盖掉了 所以没有数据打印,你可以在28行后面打印一下 调用read(f2)后面再打印一下就能看出问题了