首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

list 删除某个元素后 地址不释放其它值不会填充下来 这时候对应乱码

2012-09-17 
list 删除某个元素后 地址不释放其它值不会填充上来这时候对应乱码#includelist#includestdio.husing

list 删除某个元素后 地址不释放其它值不会填充上来 这时候对应乱码
#include<list>
#include<stdio.h>
using namespace std;
int main()
{
    int i,j,n;
    while(scanf("%d",&n)!=EOF)
    {
        int num;
        list<int>lis;
        list<int>::iterator it;
        for(i=0;i<n;i++) {scanf("%d",&num);lis.push_back(num);}
        it=lis.begin();
        printf("%d\n",*it);
        lis.erase(it);
            printf("%d\n",*it);//这时候输出的是乱码  所以说删除了一个东西后 指针还是指向那个没有值的地址
            //而不会把把别的数移动到之前删除的对应地址上去
    }
    return 0;
}

热点排行