[转载] Go语言的自重写程序
参考链接: 用Python进行Quine
2019独角兽企业重金招聘Python工程师标准>>>
UNIX/Go语言之父 Ken Thompson 在1983年的图灵奖演讲 Reflections on Trusting Trust 就给出了一个C语言的自重写程序.
最短的C语言自重写程序是 Vlad Taeerov 和 Rashit Fakhreyev 的版本:
main(a){printf(a="main(a){printf(a=%c%s%c,34,a,34);}",34,a,34);}
下面的Go语言版本自重写程序是 rsc 提供的:
/* Go quine */
package main
import "fmt"
func main() {
fmt.Printf("%s%c%s%c\n", q, 0x60, q, 0x60)
}
var q = `/* Go quine */
package main
import "fmt"
func main() {
fmt.Printf("%s%c%s%c\n", q, 0x60, q, 0x60)
}
var q = `
在 golang-nuts 中还有更短的版本(Aram Hăvărneanu):
package main;func main(){print(c+"\x60"+c+"\x60")};var c=`package main;func main(){print(c+"\x60"+c+"\x60")};var c=`
其实国内出版的<Go语言.云动力>的1.3节也给出了一个版本(和rsc的类似).
关于其他各种语言的自重写程序, 可以参考这个网站:
http://www.nyx.net/~gthompso/quine.htm
转载于:https://my.oschina.net/chai2010/blog/118470
[转载] Go语言的自重写程序相关推荐
- mapreduce编程实例python-使用Python语言写Hadoop MapReduce程序
原标题:使用Python语言写Hadoop MapReduce程序 Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发. 在本教程中,我将描述如何使用Pytho ...
- Apache Spark学习:利用Scala语言开发Spark应用程序
Spark内核是由Scala语言开发的,因此使用Scala语言开发Spark应用程序是自然而然的事情.如果你对Scala语言还不太熟悉,可以阅读网络教程 A Scala Tutorial for Ja ...
- 利用多线程实现linux下C语言的聊天室程序:
转载:http://www.360doc.com/content/16/0421/11/478627_552531090.shtml 利用多线程实现linux下C语言的聊天室程序: 客户端代码: th ...
- 二分法查找c语言程序_C语言的那些经典程序 第十四期
戳"在看"一起来充电吧! C语言的那些经典程序 第十四期 本期小C给大家带来三个用C语言解决实际问题的典例.如果全都理解,相信肯定能给大家带来收获!接下来让我们看看是哪些程序吧! ...
- c语言sort函数_C语言的那些经典程序 第八期
戳"在看"一起来充电吧! C语言的那些经典程序 第八期 上期带大家欣赏的指针经典程序,感觉如何?这期我们准备了几个新指针的内容,灵活运用指针可以大大减少程序的复杂度,接下来就让小C ...
- c语言开发窗口应用程序
转载于:https://blog.csdn.net/liu_rong_fei/article/details/51271901 视频下载地址:链接: http://pan.baidu.com/s/1q ...
- 一文读懂Java语言方法的重写(覆盖、Override)
很多初学Java语言的小伙伴,在学到"面向对象"这块内容的时候,都会学到的一个概念,那就是"方法的重写".重写又叫覆盖,英文名为"Override&q ...
- c语言大学程序设计题库,黑龙江大学C语言程序设计试题库程序单选
<黑龙江大学C语言程序设计试题库程序单选>由会员分享,可在线阅读,更多相关<黑龙江大学C语言程序设计试题库程序单选(5页珍藏版)>请在人人文库网上搜索. 1.黑龙江大学C语言程 ...
- Java黑皮书课后题第8章:**8.12(金融应用:计算税款)使用数组重写程序清单3-5,每个纳税人身份都有6种税率。每种税率都应用在某个特定范围内的可征税收入
**8.12(金融应用:计算税款)使用数组重写程序清单3-5 题目 题目描述 程序清单3-5:补充完整版 代码 题目 题目描述 **8.12(金融应用:计算税款)使用数组重写程序清单3-5. 每个纳税 ...
最新文章
- php libev pthreads,libuv 与 libev 的对比
- android堆栈信息,android死锁致重启问题分析
- php 自定义属性,HTML5的data-*自定义属性是什么-
- 【JZOJ5088】【GDOI2017第四轮模拟day2】最小边权和 排序+动态规划
- wxWidgets:wxComboBox类用法
- OpenCV逻辑回归Logistic Regression的实例(附完整代码)
- modbus调试工具 linux,linux libmodbus的移植
- Java参数传递对象引用传递失效
- moongose模糊查询相关博客
- 机器学习基石 作业三
- 适用于dev中c语言的图形库,Dev-C++中使用EGE图形库
- 儒略日小工具-输入年月日时分秒转换儒略日
- YOLOX安装及训练
- html下拉栏去掉样式,怎么去掉下划线样式?
- 【方向盘】蚂蚁金服上市了,我不想努力了
- 如何用电脑录制视频?图文教学,快速学会
- latex 表格 调整单元格文本垂直居中
- 沉痛悼念“中国航天之父”、我校创始人之一、近代力学系首任系主任钱学森先生
- 高赞的6款办公神器,好用到飞起
- php文件格式及其导出
热门文章
- 版本控制系统(SVN,Git)与项目托管平台(Github,Gitee,Coding)
- 【2020团体程序设计天梯赛】L2-3 完全二叉树的层序遍历(后序遍历转层次遍历)
- 电脑访问不了部分网站|Internet属性
- c++低通数字滤波器_快速扫盲之一阶RC低通数字滤波器算法实现
- cheat给linux,[极客工具]cheat-linux命令行实用助记工具
- java web主流框架整合开发 光盘_开发者突击:Java Web主流框架整合开发(第2版)(附CD光盘1张)...
- java底层app_Java底层类和源码分析系列-ArrayBlockingQueue底层架构和源码分析
- cisco 模拟器安装及交换机的基本配置实验心得_网络工程师的Python之路 -- 自动监测网络配置变化...
- matlab的三维数组(三维矩阵)
- UnityShader11:纹理属性