一个关于c++的问题,请各位指点!!!

[复制链接]
查看11 | 回复0 | 2008-11-15 21:54:54 | 显示全部楼层 |阅读模式
这个程序的主要是想说明一下传指针的一些问题!发现自己有些地方没搞懂!
就是定义一个结构体指针然后将其以参数形式传递到一个函数中
将它再赋值为NULL 为何原来指针指向的内容没有改变,即其值不为NULL
就像下面这个程序中一样总不执行 num1==NULL 这个条件!
请各位指教!!!!!!!
#include
using namespace std;
struct Node{
char ch; //没有使用
int num;
};
void Myswap(Node *num1,Node *num2)
{
if(num1->num > num2->num)
{ int temp=num1->num ;
num1->num=num2->num ;
num2->num =temp;
}
num1=NULL;
}
void main()
{
Node *num1=NULL;
Node *num2=NULL;
num1=new Node;
num1->num=12;
num2=new Node;
num2->num=4;
Myswap(num1,num2);
if(num1!=NULL)
{
coutnum num num=NULL;主函数判断语句这样写:if(num1->num!=0) 就可以和你想的一样了。我感觉如果你想给一个结构体对象赋值,必须重载运算符->.直接赋值好像只能在初始化的时候。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行