我有以下程序:C程序不斷關閉
#include <stdio.h>
#include <conio.h>
main(char name[31], int phone)
{
FILE *file;
file=fopen("data.txt","w");
if (file==NULL)
{
file=fopen("data.txt","w");
printf("Name : ");
scanf("%s",&name);
printf("\nPhone number : ");
scanf("%d",&phone);
printf("Your booking number is : ");
fprintf(file,"%s;%d\n",name,phone);
fclose(file);
}
else
{
file=fopen("data.txt","a");
printf("Name : ");
scanf("%s",&name);
printf("\nPhone number : ");
scanf("%d",&phone);
fprintf(file,"%s;%d\n",name,phone);
fclose(file);
}
}
當我編譯並運行程序,程序要求的名稱。輸入名稱後,會出現警報並關閉程序。該程序曾經工作,但重新啓動計算機後,它現在有這種新的行爲。
什麼可能是錯誤的?
通常我會說你需要詳細說明確切的錯誤信息是什麼,但現在我只是想知道你認爲你是通過什麼傳遞給主要的,以及應該如何工作....無論你是什麼做...不要這樣做。只需在函數中聲明一個本地int和數組,以存儲從用戶讀取的值 – Mike
我同意Mike。這不是一個標準的C程序。 – avgvstvs
我認爲這是我第一次看到有人使用局部變量的函數參數列表... – hyde