如何在不使用任何外部庫的情況下使用標準C++編寫代碼以自行顯示代碼(將代碼打印到控制檯)?如何編寫代碼以顯示自己
回答
田田:http://en.wikipedia.org/wiki/Quine_(computing)
在一個稍微更加務實的筆記,幾乎沒有人做到這一點。沒有用。如果您想分發源代碼,只需將其放入一個tarball或zip文件,就像一個理智的人。
這是一個有趣的學習經歷。 –
要求別人爲你做這件事情就不那麼有趣了。 –
基本上,訣竅是寫你的代碼,以便它包含一個字符串。在該字符串內部是_exact相同的code_,除了字符串的內容(在其內部)之外,您有一些魔術鍵字符(或兩個),它們在代碼中沒有其他地方。然後將該字符串顯示到控制檯,直到該關鍵字符,顯示整個字符串,然後顯示關鍵字符後的字符串_after_。 –
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main() {
string line;
ifstream sourceFile(__FILE__);
if (sourceFile.is_open())
{
while (sourceFile.good())
{
getline (sourceFile,line);
cout << line << endl;
}
sourceFile.close();
}
else cout << "Unable to open source file";
return 0;
}
調用'good()','eof()',&c作爲循環條件幾乎總是導致bugger程序。提示:爲什麼你的程序打印一個額外的空行? –
請參閱[此處](http://ideone.com/VvnpW)以獲取其他實現。 –
是的,它更有意義。 –
- 1. Mediawiki顯示自己的PHP源代碼
- 2. 如何編寫我自己的測試代碼
- 3. 如何爲gcc編寫自己的代碼生成器後端?
- 4. 我可以在Drupal中編寫自己的HTML代碼嗎?
- 5. 如何編寫代碼示例,在代碼中缺少代碼?
- 6. 如何爲node.js編寫以下代碼?
- 7. 如何編寫顯示圖形的代碼?
- 8. 如何編寫自己的isnumber()函數?
- 9. 如何編寫自己的dynamic_cast
- 10. 如何編寫自己的Android LocationService?
- 11. 如何編寫自己的日誌類
- 12. 如何編寫我自己的ContextMenu? C#
- 13. 如何編寫我自己的AuthorizeTag?
- 14. 如何編寫自己的Webstorm插件?
- 15. 如何編寫自己的CasperJS模塊?
- 16. 如何編寫我自己的loop_until?
- 17. 如何編寫將提供自身代碼的演示頁面?
- 18. 顯示自代碼
- 19. 如何讓cgdb顯示彙編代碼?
- 20. 如何編寫JavaScript代碼
- 21. 如何編寫僞代碼
- 22. 如何編寫html5代碼
- 23. 如何編寫HTML代碼
- 24. 如何編寫此代碼?
- 25. 如何編寫PHP代碼
- 26. 如何編寫sass代碼?
- 27. 我如何爲自己的新網站編寫一段favicon代碼行?
- 28. 想知道如何爲以下代碼編寫UT代碼嗎?
- 29. 如何從頭開始編寫我自己的圖形顯示引擎?
- 30. 如何編輯此代碼以僅顯示一個div? jquery
http://en.wikipedia.org/wiki/Quine_%28computing%29 –
昆士蘭犬大多是作爲鍛鍊來完成的。如果有人告訴你如何去做,那麼它就變得毫無意義。 – stefaanv