关于数据结构的问题,请大神帮忙解答一下
关于函数调用的时候,什么时候里面的变量前面带*号?什么时候不带?哪位比较明白的给讲一下呗,谢谢了!!下面的这个题是二叉树的,我把小甲鱼的程序给改了一下,就运行不出来结果了#include <stdio.h>
#include <stdlib.h>
typedef char Elemtype;
typedef struct Bitnode
{
Elemtype data;
struct Bitnode *lchild,*rchild;
}Bitnode,*Bitree;
//创建二叉树
CreatBitree(Bitree T)
{
char c;
scanf("%c",&c);
if(c==' ')
{
T=NULL;
}
else
{
T=(Bitree)malloc(sizeof(Bitnode));
(T)->data=c;
CreatBitree(T->lchild);
CreatBitree(T->rchild);
}
} 前面带星号是指针。。。 Daisy郝hao 发表于 2016-7-28 08:37
前面带星号是指针。。。
那为什么有的的时候有的会带*号,有的不带呢 {:10_258:} 学习资料http://blog.chinaunix.net/uid-26548237-id-3476920.html
带*表示指针、也就是一个实际数据地址相当于仓库号、不带表示实际的数据相当于仓库、
指针类似别名(引用)、但指针不是引用、 我也不是很懂,小甲鱼有时候还会双*号 你猜?
我也不是很懂,小甲鱼有时候还会双*号{:10_254:} 也不是很懂,可能是看传入的数据还是地址方便吧 http://blog.chinaunix.net/uid-26548237-id-3476920.html (T)->data=c 等价于 (*T).data=c
页:
[1]