| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1798 人关注过本帖
标题:存在堆内存中的值去哪里了呢?(注释中红色字体标注)
取消只看楼主 加入收藏
hulianggen
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2018-12-24
收藏
 问题点数:0 回复次数:0 
存在堆内存中的值去哪里了呢?(注释中红色字体标注)
程序代码:
#include"stdafx.h"
#include<iostream>

using namespace std;

int* newPointerGet(int* p1)
{
    int k1 = 55;
    p1 = new int;
    *p1 = k1;
    return p1;
}

int* PointerGet(int* p2)
{
    int k2 = 55;
    p2 = &k2;
    return p2;
}

int main()
{
    cout << "输出函数各自返回指针所指向的内存的值" << endl;
    int* p = NULL;
    p = newPointerGet(p);
    int* i = NULL;
    i = PointerGet(i);
    cout << "newGet:" << *p<<endl ;
    cout << "Get:" << *i << endl;//*i 的值不是55,显示为:260090768,每次编译显示的值还不一样。
    cout << "i 所指向的内存没有被立刻销毁,执行一个输出语句后:" << endl;
    cout << "newGet:" << *p << endl;
    cout << "get:" << *i << endl;
    delete p;
    cout << "销毁内存后:" << endl;
    cout << "newGet:" << *p << endl;
    return 0;
}



搜索更多相关主题的帖子: 存在 内存 int return cout 
2018-12-24 14:59
快速回复:存在堆内存中的值去哪里了呢?(注释中红色字体标注)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015213 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved