while(!feof(fp)){
fscanf(fp,"%d %s %s %d %d %d\n",&(staff[i].num),staff[i].name,staff[i].sex,&(staff[i].basepay),&(staff[i].extrapay),&(staff[i].day)); *j++; i++; }//上图的代码
很简单的代码,就是把txt中每一行的数据依次存入结构体数组中,用for循环有效,但是改成while循环就没用了怎么回事?
学习是最好的投资!
一個低階錯誤,*j++要加括號,應該是(*j)++。雖然對問題沒什麼影響,但讓我誤以為資料沒有被傳入結構體數組內。再加上之前運行了下搜尋函數又報不存在,就以為資料沒存進去。 另外編譯器有點抽風,關了去看部電影回來,再運作下就好了。
一個低階錯誤,*j++要加括號,應該是(*j)++。雖然對問題沒什麼影響,但讓我誤以為資料沒有被傳入結構體數組內。再加上之前運行了下搜尋函數又報不存在,就以為資料沒存進去。
另外編譯器有點抽風,關了去看部電影回來,再運作下就好了。