指针与引用在主调函数和被调函数中的应用

/* 初始化顺序线性表 */
Status InitList<span style="background-color: rgb(51, 255, 51);">(LinkList *L</span>) 
{ 
    *L=(LinkList)malloc(sizeof(Node)); /* 产生头结点,并使L指向此头结点 ,L是指向指针的指针,即:指向头节点指针的指针*/
    if(!(*L)) /* 存储分配失败 */
            return ERROR;
    (*L)->next=NULL; /* 指针域为空 */

    return OK;
}

/* 初始条件:顺序线性表L已存在,1≤i≤ListLength(L) */
/* 操作结果:用e返回L中第i个数据元素的值 */
Status GetElem(LinkList L,int i,<span style="background-color: rgb(51, 255, 51);">ElemType *e</span>)
{
	int j;
	LinkList p;		/* 声明一结点p */
	p = L->next;		/* 让p指向链表L的第一个结点 */
	j = 1;		/*  j为计数器 */
	while (p && j<i)  /* p不为空或者计数器j还没有等于i时,循环继续 */
	{   
		p = p->next;  /* 让p指向下一个结点 */
		++j;
	}
	if ( !p || j>i ) 
		return ERROR;  /*  第i个元素不存在 */
	*e = p->data;   /*  取第i个元素的数据 */
	return OK;
}

int main()
{        
    <span style="background-color: rgb(51, 255, 51);">LinkList L;</span>
   <span style="background-color: rgb(51, 255, 51);"> ElemType e;</span>
    Status i;
    int j,k;
    i=InitList<span style="background-color: rgb(51, 255, 51);">(&L</span>);

    GetElem(L,5,<span style="background-color: rgb(51, 255, 51);">&e</span>);

    return 0;
}
被调函数InitList,GetElem中的参数一般用指针,主调函数中的LinkList L,ElemType e,要想改变L,e的值,主调函数调用时用取地址符&L;不想改变L,e的值调用时直接传递,想改变自己的值,被调函数体中用指针,主调i函数调用时加上&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值