-1
printf("\nID #: %d",counter++);
fflush(stdin);
printf("\nEnter Menu Name: ");
scanf("%[^\n]s",&menus.name);
fflush(stdin);
printf("Enter what the menu made of (pork,beef,chicken): ");
fflush(stdin);
scanf("%[^\n]s",&menus.make);
printf("Number of Servings: ");
fflush(stdin);
scanf("%d",&menus.numserve);
fflush(stdin);
printf("Price: ");
scanf("%f",&menus.price);
fflush(stdin);
fwrite(&menus, 1, sizeof(menus), fp);
numofentrees--;
我的問題是我想自動生成我的ID#所以我增加了它,然後我想我的文件處理讀取最後一個數字,例如我想輸入2條記錄然後我的身份證號碼應該生成1和2然後我填寫記錄我希望再次生成一個記錄,然後我的下一個ID號應該是3,但在我的程序中它會再次返回ID#1。有人可以解釋給我的感謝。我使用C語言如何自動增加文件處理號碼
不要做'fflush(標準輸入)',它是一個不確定的操作調用'fflush'上只具有輸入流。 –
如果您想閱讀完整行,請改用['fgets'](http://en.cppreference.com/w/c/io/fgets)。 –
至於你的問題,'counter'定義在哪裏?在哪裏以及如何初始化或分配給?請創建一個[最小,**完整**和可驗證示例](http://stackoverflow.com/help/mcve)並向我們顯示。 –