关于烫烫烫和屯屯屯

微较的msvc编译器,调试模式下为了方便检测内存的非法访问,对于不同的内存做了初始化,

未初始化栈: 0xCCCCCCCC

未初始化堆: 0xCDCDCDCD

已释放的堆: 0xDDDDDDDD

0xCCCC解释为GB2312字符即是烫, 0xCDCD即是屯, 0xDDDD即是葺。所以遇到此类问题时,从现象的不同可以反推出具体的内存错误类型。

cpp 复制代码
#include <stdio.h>
#include <malloc.h>

int main(int argc, char** argv)
{
	char stack_mem[32];
	stack_mem[31] = 0;
	printf("stack mem: %s\n", stack_mem);

	char *heap_mem = (char *)malloc(32);
	if (heap_mem != NULL) {
		heap_mem[31] = 0;
		printf("heap  mem: %s\n", heap_mem);

		free(heap_mem);
		printf("heap  mem: %s\n", heap_mem);
	}

	return 0;
}
相关推荐
还债大湿兄1 小时前
《C++内存泄漏8大战场:Qt/MFC实战详解 + 面试高频陷阱破解》
c++·qt·mfc
珊瑚里的鱼4 小时前
LeetCode 692题解 | 前K个高频单词
开发语言·c++·算法·leetcode·职场和发展·学习方法
AI+程序员在路上4 小时前
QTextCodec的功能及其在Qt5及Qt6中的演变
开发语言·c++·qt
Risehuxyc5 小时前
C++卸载了会影响电脑正常使用吗?解析C++运行库的作用与卸载后果
开发语言·c++
景彡先生7 小时前
C++编译期计算:常量表达式(constexpr)全解析
服务器·c++
tan77º8 小时前
【Linux网络编程】应用层自定义协议与序列化
linux·运维·服务器·网络·c++·tcp/ip
悠哉清闲9 小时前
Android Studio C++/JNI/Kotlin 示例 三
c++·kotlin·android studio
AI迅剑9 小时前
模块三:现代C++工程实践(4篇)第二篇《性能调优:Profile驱动优化与汇编级分析》
汇编·c++
byte轻骑兵10 小时前
【Bluedroid】蓝牙协议栈enable流程深度解析
android·c++·bluedroid
Jooolin12 小时前
【C++】: list介绍以及模拟实现
c++·ai编程·编程语言