又在写bug呢 ⋮
手持两把锟斤拷,口中疾呼烫烫烫,脚踏千朵屯屯屯,笑看万物锘锘锘
烫烫烫,一段著名乱码,可能只有程序猿才懂吧,与锘锘锘、屯屯屯类似。
在VisualC++6.0的环境,打印未初始化的由malloc申请的内存,就会出现这样的乱码。
对于visual studio的编译器,分配空间后总要在里面填一些东西。默认填入的东西是这样的:
未分配或静态分配而未赋初值的内存空间,初值用0xCC填充,如不小心访问了它们,则会看到如下内容:
按字符输出为烫(0xCCCC)
在正常情况下,分配空间后都应该赋初始值,而不应该访问到这些被称为“垃圾数据”的内容。所以如果正常情况下程序打出了“烫烫烫”,一般证明程序有bug,如数组越界等。而数组越界的bug又是时常出现的,程序冷不防打出一大堆汉字“烫”,看上去是一种莫名喜感的存在。所以程序员说“烫烫烫”大概是引用这种bug的梗。
锘锘锘与“屯屯屯”、“烫烫烫”、“锟斤拷”并称为“乱码四大天王”。
发表评论 取消回复