這裏是我的代碼 文件的名稱filewrite.cFREAD錯誤 - 分段故障
#include<stdio.h>
#include <stdlib.h>
void main()
{
int *p;
*p = 5;
FILE *fp1 = fopen("sample.txt","w");
fwrite(&p,sizeof(int),1,fp1);
fclose(fp1);
printf("\n Value of p written into the file is :%d \n",*p);
int *q;
FILE *fp2 = fopen("sample.txt","r");
fread(&q,sizeof(int),1,fp2);
fclose(fp2);
printf("\n Value of q read from the file is :%d \n",*q);
}
輸出所看到的終端在Linux上:
$>gcc -o filewrite.o filewrite.c
$>filewrite.o
$>Segmentation fault (core dumped)
我能看到文件sample.txt
寫出來。但無法理解爲什麼有一個核心轉儲。
'p'和'q'不應該是指針。將它改爲'int p = 5;'和'int q;'。 –