|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 ★远处的灯火 于 2013-11-23 09:40 编辑
大家好,我是石头,首先贴一张关于爱情的漫画犒劳一下众鱼油,希望对众鱼油{:7_169:}的爱情观有所启迪
然后是石头关于双重指针的一个疑惑点,希望明白的鱼油热心指点一下,在下不胜感激!
#include <stdio.h>
#include <stdlib.h>
typedef struct _tree
{
int data;
struct _tree * next;
}tree;
void InitTree1(tree *p)
{
p = (tree*) malloc(sizeof(tree));
p->data = 0;
p->next = NULL;
return ;
}
void InitTree2(tree **p)
{
(*p) = (tree*)malloc(sizeof(tree));
(*p)->data = 0;
(*p)->next = NULL;
return ;
}
int main()
{
tree p1, *p2;
InitTree1(&p1);
InitTree2(&p2);
return 0;
}
不好意思,这个问题就像递归一样,我虽然能写出来,但是我总感觉犯晕,也不知道我写的是否有错误,最重要的是我甚至说不出自己的真正问题所在,我勉强把自己的疑问写一部分,请问
1个代码中的p1和p2有什么区别?
2这两种初始化p1和p2的方法有什么区别?
3哪种方法根好一点?
4为什么我见很多时候都是用的第二种方法而少用第一种方法?
5可以讲解一下双重指针的一些常见问题吗?
可能我问的也不是特别好,但是还是希望各位热心的鱼油可以为我解答疑惑!
|
|