C++入门经典-例5.10-指针作为返回值
1:代码如下:
// 5.10.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <iostream>
using std::cout;
using std::endl;
int* pointerGet(int* p)//定义一个返回指针类型的函数
{
int i = 9;
cout<<"函数体中i的地址"<<&i<<endl;
cout<<"函数体中i的值:"<<i<<endl;
p = &i;
return p;
}
int main()
{
int* k = NULL;
cout<<"k的地址:"<<k<<endl;
cout<<"执行函数,将k赋予函数返回值"<<endl;
k = pointerGet(k);//执行函数后,i的内存被销毁,值变成了一个不可预知的数
cout<<"k的地址:"<<k<<endl;
cout<<"k所指向内存的内容:"<<*k<<endl;
}
View Code
运行结果: