用struct LNode *L与LinkList &L的区别
用void InitList(struct LNode *L), 函数InitList中如果改变了L指针本身的值,对其他函数无影响。用void InitList(LinkList &L),函数InitList中如果改变了L指针本身的值,也影响调用他的函数。这就是引用方式的调用特点。
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
typedef struct lnode
{
int data;
struct lnode *next;
}lnode,*linklist;
int initial(linklist &s)
{
printf("11=%d/n",s);
s=(lnode *)malloc(sizeof(lnode));
printf("12=%d/n",s);
return 1;
}
int initial2(linklist *s)
{
linklist x;
printf("21=%d/n",s);
s=&x;
printf("22=%d/n",s);
return 1;
}
void main()
{
linklist s;
printf("10=%d/n",s);
initial2(&s);
printf("20=%d/n",s);
initial(s);
printf("23=%d/n",s);
}
10=-858993460
21=1245052
22=1244960//如果改变了s指针本身的值,对其他函数无影响
20=-858993460
11=-858993460
12=3671976//如果改变了s指针本身的值,也影响调用他的函数。这就是引用方式的调用特点。
23=3671976
所以实质是:linklist s; initial2(linklist *s)s变成了二级指针lnode**s,initial(linklist &s)s 变成了lnode*&s地址里面的内容本质是结构体
用struct LNode *L与LinkList &L的区别的更多相关文章
- 链表中LinkList L与LinkList *L 借鉴
链表中LinkList L与LinkList *L的区别以及(*L).elem,L.elem L->next,(*L)->next的区别typedef struct Node{int el ...
- typedef struct LNode命名结构指针(线性表的链式存储)
一.typedef 关键字 1. 简介: typedef工具是一个高级数据特性,利用typedef可以为某一些类型自定义名称. 2. 工作原理: 例如我们定义链表的存储结构时,需要定义结点的存储数据元 ...
- SqList *L 和 SqList * &L的区别/学习数据结构突然发现不太懂 小祥我查找总结了一下
小祥在学习李春葆的数据结构教程时发现一个小问题,建立顺序表和输出线性表,这两个函数的形参是不一样的. 代码在这里↓↓↓ //定义顺序表L的结构体 typedef struct { Elemtype d ...
- gcc -l参数和-L参数
转自:http://www.cnblogs.com/benio/archive/2010/10/25/1860394.html -l: -l参数就是用来指定程序要链接的库,-l参数紧接着就是库名,那么 ...
- gcc “-I”(大写i),“-L”(大写l),“-l”(小写l)的区别
我们用gcc编译程序时,可能会用到“-I”(大写i),“-L”(大写l),“-l”(小写l)等参数,下面做个记录: 例: gcc -o hello hello.c -I /home/hello/inc ...
- Linux统计文件/目录数量ls -l | grep "^-" | wc -l匹配开头和结尾
Linux统计文件数量 ls -l | grep "^-" | wc -l “^-” 一般文件 “^d” 目录文件 shell/vim中^表示开头 cat repatterns ...
- linux之ls -l|grep "^-"|wc -l命令
查看某文件夹下文件的个数 ls -l |grep "^-"|wc -l 或 find ./company -type f | wc -l 查看某文件夹下文件的个数,包括子文件夹里的 ...
- 十八、泛型 l 注解 l Servlet3.0 l 动态代理 l 类加载器基础加强
l 泛型 l 注解 l Servlet3.0 l 动态代理 l 类加载器 泛型 1 回顾泛型类 泛型类:具有一个或多个泛型变量的类被称之为泛型类. public class A<T> { ...
- 宽字符————_T、_TEXT、L、TEXT之间的区别
_T._TEXT.L.TEXT之间的区别 在分析前先对三者做一个简单的分类 _T._TEXT.TEXT三者都是根据编译器的环境进行ANSI/UNICODE变换的,_T和_TEXT是根据_UNICODE ...
随机推荐
- (转)AIX修改系统时区的3种方法和AIX 时间问题(夏令时)
原文:http://blog.csdn.net/fuwencaho/article/details/28267283 http://www.wo81.com/tec/os/aix/2014-04-30 ...
- (转)DNS原理及其解析过程
DNS原理及其解析过程原文:http://blog.51cto.com/369369/812889 网络通讯大部分是基于TCP/IP的,而TCP/IP是基于IP地址的,所以计算机在网络上进行通讯时只能 ...
- Android下常见的内存泄露 经典
转自:http://www.linuxidc.com/Linux/2011-10/44785.htm 因为Android使用Java作为开发语言,很多人在使用会不注意内存的问题. 于是有时遇到程序运行 ...
- elasticsearch结构化查询过滤语句-----4
1.之前三节讲述的都是索引结构及内容填充的部分,既然添加了数据那我们的目的无非就是增产改查crudp,我先来讲讲查询-----结构化查询 我们看上图截图两种方式: 1)第一种,在索引index5类型s ...
- if转switch
if($a=="a") { echo "a"; } elseif ($a == "b") { echo "b"; } e ...
- 基于 MUI 构建一个具有 90 +页面的APP应用
前言 mui是一款接近原生App体验的前端框架,只需要掌握前端技术就可以开发APP应用,官方有提供功能比较全面的demo版本, 但在实战中总会遇到一些不可避免但坑,对于没有接触过mui的开发者,难免会 ...
- 背景图片之background的用法
常用的background背景属性有: background-color 设置颜色作为对象背景颜色background-image 设置图片作为背景图片background-repeat 设置背景平铺 ...
- FAT12格式的引导区实现
org 07c00h ;================================================ jmp short START nop ; 这个 nop 不可少 ;这个结构将 ...
- MySQL累加值时,考虑到值有为NULL的情况.
一个字段,表示报名人数,默认为null,经考虑,以以下sql执行加1: ) where id='xxx'
- 用Python爬虫对豆瓣《敦刻尔克》影评进行词云展示
最近很想看的一个电影,去知乎上看一下评论,刚好在学Python爬虫,就做个小实例. 代码基于第三方修改 原文链接 http://python.jobbole.com/88325/#comment-9 ...