到目前為止已經把基本的型別都介紹完了,這篇來介紹一下進階的型別用法。
packed
packed
在 C 中不是標準的關鍵字,但是大多數的編譯器都有支援相關的擴充語法。在 Zig 中你可以直接使用 packed
來達成,改變型別的對齊行為。
union
struct
bit-field
Zig 的 struct
並不直接支援像 C 那樣的 bit field 語法,但是你可以透過它的自訂長度整數和 packed
來完成。
轉型時可以利用 @bitCast()
。
另一種:
匿名 struct
如果你需要一個臨時的 struct
,則可以使用匿名 struct
,例如想要一個多回傳值的函式。
參考
本文以 Zig 0.13.0
為主。並同時發佈在:
留言可能不會立即顯示。若過了幾天仍未出現,請 Email 聯繫:)