以stdio.h
中定義的FILE
類型爲例:有沒有什麼方法可以在不查看頭部的情況下獲取有關其字段(名稱,大小,偏移量等)的信息?有時用這樣的函數/宏來檢查一個結構的組件會很方便。如何「查看」一個結構?
4
A
回答
10
號
有與C數據結構相關聯的元數據,所有這些編譯時丟失。
而且這是完全可能的,因爲FILE
是不透明的,沒有公共頭部實際上有定義。它可能只是庫中的typedef struct __FILE FILE;
,然後所有的細節都保存在裏面,可能在代碼中你甚至沒有源代碼。
+0
通常,由於歷史原因,「FILE」被定義爲「typedef struct _iobuf FILE」。 – fuz
1
簡單的答案是否。你必須有源代碼。
-1
1
在基於C的結構中,數據的存儲方式不是「自定義」 - 您必須知道結構定義才能解釋數據。這樣可以將數據的大小減少到最低限度,並且可以更快地訪問數據,只要程序能夠理解結構。
0
答案是否定的。
無論何時,我需要找到關於struct數據成員的信息,Header File
和comments
在那裏對我來說就足夠了。
你不能有一個函數/宏檢查結構的組成部分,因爲有一個在C.
0
的唯一途徑的變量和程序有關的資料看關於這方面的任何元數據應該有實際的來源,或解釋結構如何組織的api /軟件文檔。
相關問題
- 1. 如何查看文件的結構
- 2. 如何查看HSQLDB中的表結構?
- 3. Cruisecontrol:如何查看構建結果
- 4. ASP.Net MVC查看結構
- 5. 如何在一個結構
- 6. 查看C結構如何在構建時間內打包
- 7. 如何查看當前加載的JavaScript構造的結構?
- 8. 如何釋放一個結構是一個其他結構
- 9. 如何在另一個結構中使用一個結構?
- 10. 怎麼看另一個結構內部結構的價值
- 11. 如何構建一個查詢來返回一個結果
- 12. 如何在層次結構查看器中查看視圖背後的代碼
- 13. 如何在結構指向一個指向同一結構
- 14. 如何查詢這個結構的xml?
- 15. 如何得到一個JSON結果/響應查看
- 16. 如何獲得一個結構,在一個結構中,並將其分配給一個結構數組
- 17. 如何查看查詢的結果
- 18. 查看UIViewController的層次結構
- 19. jpeg2000文件結構查看器
- 20. 查看文件中的樹結構
- 21. 運行層次結構查看器
- 22. Android層次結構查看器丟失
- 23. Firebase數據庫結構查看
- 24. 數據庫結構查看器/打印
- 25. gdb:查看未使用的結構typedef
- 26. 在Atom中查看文件結構
- 27. 如何查看.net中的線程結構?
- 28. 如何保持快速查看層次結構
- 29. 如何查看SQL Server中索引表的結構?
- 30. 如何查看經典HyperFileSQL數據庫的結構和外鍵?
不,這樣的元信息在C程序中不可用。 –
也許你應該問一個關於你認爲它會有用的情況的新問題 - 你可能會發現一個更好的辦法。 – OrangeDog
如果使用調試信息和支持它的格式進行編譯,請查看目標文件。但是這看起來像一個XY問題。 – Olaf