我不小心刪除了我的源程序,現在我只有gcc編譯的代碼。是否有任何方法可以找回我的源代碼。如何解碼gcc編譯的c源代碼
回答
您可以使用disassembler,但永遠無法完全恢復程序的源代碼。
爲了防止這種情況發生,我建議使用源代碼控制,比如Git或Subversion。使用這些工具,您將始終備份您的代碼,以防萬一發生這樣的大錯誤。
如果您使用的是基於Eclipse的IDE,它可能在其歷史記錄中保存了源代碼版本。如果是這樣,請右鍵單擊該項目並選擇「從本地歷史恢復...」。
編輯 否則嘗試grep -a -C 200 -F 'Unique string in text file' /dev/sda1 > OutputFile
;用你認爲在文件中的行數和/ dev/sda1替換200分區。
有關更多信息,請參閱文本文件恢復部分https://wiki.archlinux.org/index.php/File_recovery。
祝你好運!
如果不使用....? – CristiFati
@CristiFati看我的編輯。另外,我知道一些大學會對他們的文件系統進行夜間備份。 – apandit
從二進制文件恢復C源已被描述爲「把漢堡包變回牛羣」。您將無法恢復您的原始源代碼。最好的情況是,你將得到一些與原始源代碼功能相同的代碼,但它不包含任何原始變量名稱,註釋,宏等,它們的結構可能不一樣(取決於它的激進程度)被優化了),它可能不是很容易理解(再次,取決於它如何被優化)。
希望原文仍能以某種方式恢復。
- 1. gcc編譯無效C代碼
- 2. 如何使用gcc編譯SIMD代碼
- 3. 用GCC編譯WIN32代碼
- 4. 如何以編程方式從使用mingw32-gcc編譯器的c#代碼編譯c代碼
- 5. 如何編譯包含C源文件的C++源代碼?
- 6. 如何使用GCC將C代碼編譯爲8088彙編?
- 7. 如何從GCC源代碼構建本地編譯器?
- 8. 編譯C代碼
- 9. GCC無法編譯正確的代碼
- 10. Haxe編譯爲C++和JS源代碼
- 11. MagickNet C++源代碼編譯失敗
- 12. c#編譯數據庫源代碼
- 13. 如何從源代碼編譯Blender?
- 14. 如何編譯GTK2源代碼?
- 15. 如何編譯java源代碼?
- 16. 如何編譯primefaces源代碼?
- 17. 如何從源代碼編譯XBMC
- 18. 在gcc編譯時如何在C++的彙編代碼中使用C變量?
- 19. 如何編譯TCL/shell代碼(隱藏原來的源代碼)
- 20. 反編譯預編譯源代碼ASP.NET
- 21. 在ubuntu中編譯/編譯源代碼
- 22. 編譯android源代碼
- 23. nginx從源代碼編譯
- 24. SML編譯器源代碼?
- 25. GCC源代碼中的C語法
- 26. 用C++編譯器編譯c代碼
- 27. gcc是否可以不編譯代碼?
- 28. 使用gcc和SciTE編譯代碼?
- 29. 如何Python的(C)的源代碼編譯成共享庫
- 30. 解碼反編譯的源代碼對於Android
是的,但與編譯的格式不同。 –
根據您如何刪除它,您可以簡單地執行文件恢復。 – Zsw
在那裏人,如果它不是一個巨大的項目,重寫它然後嘗試恢復它會快得多。 – asdf