[内存数据分析] C++ STL容器 list

本文主要探讨了C++中STL容器list的使用,包括如何初始化容器,读取容器指针,解析std::_List_node<int,void *>结构,以及详细阐述了如何读取容器内的数据链表。" 126162028,11614990,C++使用Dshow预览及保存USB摄像头,"['C++开发', 'Windows开发', '视频捕获', 'Dshow库']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

初始化容器
list<int> int_list;
for (size_t i = 0; i < 10; i++)
    int_list.push_back(i);
int_list.push_front(-1);
读取容器指针
>dd &int_list
0x00CFFB60  0111e8e0 0111edb0 0000000b 
- std::allocator<std::_List_node<int,void *> >
0111e8e0
- std::_List_val<std::_List_simple_types<int> >
0111edb0	_Myhead		std::_List_node<int,void *> *		数据双向链表
0000000b	_MySize		unsigned int 						元素数量
std::_List_node<int,void *>结构
std::_List_node<int,void *>
_Next	std::_List_node<int,void *> *	下个节点
_Prev	std::_List_node<int,void *> *	上个节点
_Myval	int								值
读取容器的数据链表
>dd 0x0111edb0 -> 根节点
0x0111EDB0  0111e950 0111e8a8 cdcdcdcd
>dd 0x0111e950 -> 0xFFFFFFFF 是首个元素
0x0111E950  0111eb10 0111edb0 ffffffff
>dd 0x0111eb10
0x0111EB10  0111ee90 0111e950 00000000
>dd 0x0111ee90
0x0111EE90  0111ed78 0111eb10 00000001
>dd 0x0111ed78
0x0111ED78  0111e918 0111ee90 00000002
>dd 0x0111e918
0x0111E918  0111ea30 0111ed78 00000003
>dd 0x0111ea30
0x0111EA30  0111eec8 0111e918 00000004
>dd 0x0111eec8
0x0111EEC8  0111eaa0 0111ea30 00000005
>dd 0x0111eaa0
0x0111EAA0  0111e800 0111eec8 00000006
>dd 0x0111e800
0x0111E800  0111ea68 0111eaa0 00000007
>dd 0x0111ea68
0x0111EA68  0111e8a8 0111e800 00000008
>dd 0x0111e8a8
0x0111E8A8  0111edb0 0111ea68 00000009
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值