☆ C/C++ 結構體陣列與typedef
阿新 • • 發佈:2018-11-03
記錄自己不經意間遇到的錯誤,
調了很久才發現是結構體這裡的問題:
****************************************************************************************************************************************
★問題出現:
typedef struct stu
{
char name[20];
float score;
}stu_info[3];
這樣無論怎麼賦值都會出現錯誤,
因為出現這個問題的時候,用的是學校的電腦,程式不僅不顯示錯誤行數與還不顯示錯誤提示,
bang~bang~bang~報給我一個錯誤……(崩潰的我~)
所以要記錄下來!
★問題解決:
查閱相關資料才發現問題出在typedef上,
typedef 只是給變數起一個別名,在我上面的程式碼中,
一個普通的結構體名被起了一個數組的別名,當然在定址的時候會出現問題~
struct stu //typedef不能和結構體陣列一起使用
{
char name[20];
float score;
}stu_info[3];
然後,去掉typedef,這裡的stu_info[3]的含義就和上面不同了,
這裡是定義了一個結構體陣列,每個結構體的型別都是上面的結構體型
****************************************************************************************************************************************
最快的腳步不是跨越,而是繼續,最慢的步伐不是小步,而是徘徊。
****************************************************************************************************************************************