连续点击NEKO左上方的小黑猫即可触发↓
这时NEKO会有一句语音↓
然后再使用NEKO进入游戏你就会发现NEKO不再是不死的了,失去所有血量后会正常死亡
NEKO之死↓
相信这个彩蛋已经有不少玩家知道了,所以我要说的奇怪的知识当然不是这个了。
在触发这个彩蛋之后,NEKO的技能描述会变成不断闪烁的“烫烫烫烫烫烫”
烫烫烫↓
注意到这个的人也许会感到疑惑,NEKO为什么直呼烫烫烫,这个烫烫烫有什么含义?
实际上这是一个经典程序员梗,在Microsoft Visual Studio(简称VS,微软的一个集成开发平台,通俗点理解就是用来编程的软件)中写程序时,如果在栈中定义了一段内存,而未对其初始化直接输出(这是错误操作),就会输出一串烫烫烫乱码。未被初始化的栈在Debug模式运行时会被VS的编译器自动赋值为0xCC(0x前缀表示这是个十六进制数,CC转化成二进制就是11001100),这个值在机器指令中其实是相当于汇编指令INT 3,这是一个中断指令,让编译器运行到此处时中断运行,但是在VS中因为字符集的原因,2个连续的0xCC,即0xCCCC,在该字符集中刚好是表示汉字烫,所以就输出了一大堆烫烫烫。
定义字符数组,不初始化直接输出↓
输出烫烫烫↓
上面的专业解释看不懂没关系,来个通俗易懂的说法:有一个新容器,里面是空的,你还没往里面放东西就想从里面拿东西,这样显然会出错。系统为了告诉你出错了就往容器里面每一格都放满了同一个数,这个数代表中断指令,也就是想让你这个错误动作停下来,结果因为字符集的问题,在你取东西的时候把这些数拿出来,把2个连续的数当成了一个汉字"烫"了,所以容器里面的那些中断指令全被当成烫给显示出来了。
这在新手写程序的时候是个比较常见的错误,另外由于这个错误的结果很喜感,程序居然还能感觉到烫?所以就变成一个梗流传下来了。许多类似的由于字符编码引起的错误组成了一首打油诗:
手持两把锟斤拷,口中疾呼烫烫烫。脚踏万朵屯屯屯,笑看万物锘锘锘。
衍生出来的笑话↓