我在Visual Studio 2008的C中編寫程序。我想從二進制文件初始化數組。但我不想讓二進制文件和.exe文件一起使用。所以我必須將二進制文件嵌入到我的.exe中。我搜索了谷歌。大部分答案都建議我使用VS中的「資源」。但我不知道面向對象,我不需要這樣複雜的解決方案。 爲了同樣的目的,我在IAR EW中使用了「項目 - >選項 - >鏈接器 - >輸入 - >原始二進制圖像」。而且它完美的完成了這項任務。 如何在VS中做到這一點?從嵌入文件初始化數組
回答
用你喜歡的腳本語言編寫一個簡單的腳本,並在編譯之前將二進制文件處理成逗號分隔的一組值(也可能有在線提供的免費工具)。將這組值插入到您的源C文件中以靜態初始化一個數組。例如,結果可能類似char data[] = {0x12, 0xAB, 0xC0, ... };
- 在源代碼中使用這些數據。
我知道這個解決方案。但我的二進制文件大約0.5 KB。我想自由修改它而不需要轉換。我不想有這樣的「魔術」初始化。 – LVitya 2013-03-19 15:52:02
您可以將此過程自動化爲在編譯之前運行的預處理器步驟。更改二進制文件並重建項目時,更改將自動投影到您的源代碼中。 – SomeWittyUsername 2013-03-19 15:54:22
好主意,但在我看來這個解決方案很笨拙。 – LVitya 2013-03-19 15:59:39
- 1. 從數組初始化Func
- 2. 從數組初始化QVector
- 3. 從數組初始化
- 4. 如何初始化嵌套數組
- 5. 如何初始化嵌套數組
- 6. c#嵌套數組結構初始化
- 7. 嵌套結構/數組初始化
- 8. 初始化數組時初始化System.AccessViolationException
- 9. 用數組或初始化初始化一個NSMutableArray初始化
- 10. 數組初始化
- 11. 數組初始化
- 12. 初始化數組
- 13. 數組初始化
- 14. 從結構初始化數組初始化
- 15. 從文本文件中初始化對象數組
- 16. CNTK:train預嵌入嵌入層初始化嵌入層?
- 17. 文件數組初始化錯誤:變量可能未初始化
- 18. 從C數組初始化ublas向量
- 19. 如何從double數組初始化Mat?
- 20. 從UIViewController初始化UIView數組
- 21. 從c#初始化javascript數組值#
- 22. Silverlight初始化組件
- 23. XamlParseException初始化組件WP8
- 24. 按需初始化組件
- 25. 異步初始化組件
- 26. ReSharper的嵌入對象初始化
- 27. 嵌入式碼頭:Servlet未初始化
- 28. jwplayer嵌入sitefinity時如何初始化?
- 29. 在初始化時嵌入python錯誤
- 30. PostgreSQL:FATAL:XX000:無法寫入初始化文件
什麼問題? – GregC 2013-03-19 15:38:03
Windows方式正在使用資源。順便說一句,你不需要這樣的OOP :) http://www.codeproject.com/Articles/4221/Adding-and-extracting-binary-resources – 2013-03-19 15:39:56
Linux又如何?我可以讓我的程序跨平臺嗎? – LVitya 2013-03-19 17:46:14