Struct在處理多樣資料時非常有用。例如在命令列輸入a=dir,可以看到返回的a就是一個struct,其中包括了很多域,例如name,bytes,isdir等。
1)使用a.name, a.bytes等檢視當前路徑下檔案的情況;
2)編寫一個迴圈程式碼,遍歷a中每一個檔案,如果這個檔案不是一個資料夾,則輸出如下文字“File name contains X bytes”。
執行結果可參考下例:
HW4.doc contains 127488 bytes
Pro1.m contains 58 bytes
cellPrc.asv contains 161 bytes
cellPrc.m contains 198 bytes
coinTest.asv contains 374 bytes
coinTest.m contains 382 bytes
structPrc.asv contains 79 bytes
structPrc.m contains 151 bytes
~$HW4.doc contains 162 bytes
~WRL0001.tmp contains 128000bytes
在實際問題中,一組資料往往具有不同的資料型別。例如, 在學生登記表中,姓名應為字元型;學號可為整型或字元型; 年齡應為整型;性別應為字元型;成績可為整型或實型。 顯然不能用一個數組來存放這一組資料。 因為陣列中各元素的型別和長度都必須一致,以便於編譯系統處理。為了解決這個問題,C語言中給出了另一種構造資料型別——“結構”。 它相當於其它高階語言中的記錄。
Struct在處理多樣資料時非常有用。例如在命令列輸入a=dir,可以看到返回的a就是一個struct,其中包括了很多域,例如name,bytes,isdir等。
1)使用a.name, a.bytes等檢視當前路徑下檔案的情況;
2)編寫一個迴圈程式碼,遍歷a中每一個檔案,如果這個檔案不是一個資料夾,則輸出如下文字“File name contains X bytes”。
執行結果可參考下例:
HW4.doc contains 127488 bytes
Pro1.m contains 58 bytes
cellPrc.asv contains 161 bytes
cellPrc.m contains 198 bytes
coinTest.asv contains 374 bytes
coinTest.m contains 382 bytes
structPrc.asv contains 79 bytes
structPrc.m contains 151 bytes
~$HW4.doc contains 162 bytes
~WRL0001.tmp contains 128000bytes
在實際問題中,一組資料往往具有不同的資料型別。例如, 在學生登記表中,姓名應為字元型;學號可為整型或字元型; 年齡應為整型;性別應為字元型;成績可為整型或實型。 顯然不能用一個數組來存放這一組資料。 因為陣列中各元素的型別和長度都必須一致,以便於編譯系統處理。為了解決這個問題,C語言中給出了另一種構造資料型別——“結構”。 它相當於其它高階語言中的記錄。