C/C++数据结构中利用指针的三种初始化方式

在C/C++的数据结构中,利用指针初始化操作的三种方法!
#include 
   
   
    
    
#include 
    
    
     
     
using namespace std;
/*
	结构体的各部分结构分析;
typedef:使用这个重定义一个别名代替"struct"!
mysq:声明定义一个结构体变量可以使用mysq!
mysqstack:效果同mysq保持一致!
*/
typedef struct mysq
{
	char mydata;
	int top;
}mysqstack;


//函数声明!
//这是一级指针以及二级指针使用方法的函数声明!
void Initstack(mysqstack **s);
//这是"引用"方法的函数声明!
//void Initstack(mysqstack *&s);
//以下介绍指针在数据结构中的三种用法
void main()
{
	mysqstack *s;
	cout<<"初始化堆栈!\n";
	//Initstack(s);  "引用"的使用方法!
	//Initstack(&s);  "一级指针"的使用方法!
	Initstack(&s);  //"二级指针"的使用方法!
}


//这是第一种方法:"引用"!
/*
void Initstack(mysqstack *&s)
{
	s = (mysq *)malloc(sizeof(mysq));
	s->top = -1;
}*/
//这是第二种方法,一级指针的使用!
/*
void Initstack(mysqstack **s)
{
	(*s) = (mysqstack *)malloc(sizeof(mysqstack));
	(*s)->top = -1;
}*/


//这是第三种方法,二级指针的使用!
void Initstack(mysqstack **s)
{
	(*s) = (mysqstack *)malloc(sizeof(mysqstack));
	(**s).top = -1;  //这里是和以及指针的使用区别!
}
    
    
   
   
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值