C中有結構類型等價嗎?C中有結構等價類型嗎?
1
A
回答
3
嚴格說來,沒有 - 不同名稱的類型是不同的類型,即使類型的結構是相同的。 (當然,typedef
只是爲現有類型引入了一個替代名稱;這些類型是相同類型的。)
但是,在實踐中,有許多特技可以拉動和擺脫。但嚴格來說,他們是在作弊。使用void指針是破壞系統的一種方式;另一個不使用函數的原型聲明;可變長度參數列表可以是另一個。
0
如果你問是否有可能比較兩個struct
的平等答案是否定的。只有賦值,你可以從函數返回結構。
+0
這是真的,但沒有問什麼。 – 2011-01-29 11:35:14
+0
我看到Leffler的迴應,如果這是你的意思,但認爲這個問題可能一直在問一些不同的東西,這就是爲什麼我的答案以「如果」開頭。請記住,英語不是我們這裏許多人的第一語言 - 包括我在內。 – 6502 2011-01-29 11:52:47
-2
沒有運營商在C比較兩個結構的,你可以使用memcmp來代替:
if(memcmp(&structvar1, &structvar2, sizeof structvar1))
puts("not equal");
else
puts("equal");
相關問題
- 1. Java數據結構/ C++ STL等價物?
- 2. Vector2在C++中等價嗎?
- 3. Objective-c對象是所有相同類型的C結構嗎?
- 4. 在Swift中有類型的CustomStringConvertible等價物嗎?
- 5. 等價類型CStringList
- 6. 的typedef C和類型等價
- 7. 有趣的C結構語法/類型
- 8. 結構等同vs名稱等價
- 9. 在Java中結合泛型類型的Scala等價物?
- 10. C++結構引用類型
- 11. C結構多種類型
- 12. C++:Chr()和unichr()等價嗎?
- 13. C#中結構中的引用類型#
- 14. jQuery scrollTop在原型中等價嗎?
- 15. C++等價的Java泛型
- 16. Java 7中會包含結構體和值類型(如C#)嗎?
- 17. C++中的C++參考類型的等價物#
- 18. 是什麼PRINTER_INFO_2結構的C#中的等價
- 19. C中的結構類型轉換
- 20. C++ 11中的枚舉器等價嗎?
- 21. C#WinForms ListBox SelectedIndex在ListView中等價嗎?
- 22. C中的boost :: bind等價物嗎?
- 23. C中Java的System.getProperty(「java.io.tmpdir」)等價嗎?
- 24. 命名等價與等價結構之間的區別?
- 25. C結構數組類型在C
- 26. 類類型的錯誤C++與結構
- 27. c中不同類型結構的鏈接結構?
- 28. 結構可以有`Card *`類型嗎? (從書中例)
- 29. Java中的等價數據類型
- 30. 結構類型細化和類型相等
不知道如果我同意100%。 C編譯一次只能運行一個編譯單元,因此編譯器無法決定向結構添加隨機填充字節。還要考慮C++ POD類型的問題......如果C結構在它們之間不兼容,它們又如何與C結構兼容? – 6502 2011-01-29 12:08:29