阅读背景:

C语言漏洞基础(一)

来源:互联网 

未初始化数组在VS中

Visual Studio中,未初始化的栈空间用0xCC填充,而未初始化的堆空间用0xCD填充。 而0xCCCC和0xCDCD在中文GB2312编码中分别对应“烫”字和“屯”字。 如果一个字符串没有结束符'

未初始化数组在VS中

Visual Studio中,未初始化的栈空间用0xCC填充,而未初始化的堆空间用0xCD填充。 而0xCCCC和0xCDCD在中文GB2312编码中分别对应“烫”字和“屯”字。 如果一个字符串没有结束符'\0',输出时就会打印出未初始化的栈或堆空间的内容,这就是大名鼎鼎的“烫烫烫”、“屯屯屯”乱码。

[email protected]:~$ cat vun.c
#include<stdio.h>
#include<string.h>
int main()

{
char x[4];  //未初始化数组
puts(x);
return 0;
}

转载自www.cnblogs.com/zuoanfengxi/p/12452429.html',输出时就会打印出未初始化的栈或堆空间的内容,这就是大名鼎鼎的“烫烫烫”、“屯屯屯”乱码。 Visual Studio中,未初始化的栈空间用0xCC填充,而未初始




你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: