C语言关于指针的简单教案,c语言电子教案(指针).ppt

c语言电子教案(指针)

第11章 指 针 知识点: 指针的定义 指针变量的使用 各种指针的使用 重点: 指针的概念及C语言指针使用的特点 指针变量的定义、引用 数组的指针、字符串的指针、函数的指针、指向指针的指针的使用 难点: 指针的运算和使用 指针在数组中的使用及使用特点  第11章 指 针 指针是C语言中的一个重要的概念,也是C语言的一个重要特色。 可以表示复杂的数据结构 能动态分配内存 能方便地使用字符串 有效而方便地使用数组 在调用函数时能得到多于1个的值 能直接处理内存地址等 11.1 地址和指针的概念 “直接访问”方式 按变量地址存取变量值的方式 “间接访问”方式 通过存放变量地址的变量去访问变量 变量的指针 就是变量的地址 指针变量 存放变量地址的变量 用来指向另一个变量 用“*”符号表示“指向” 定义一个指针变量 指针变量不同于整型变量和其他类型的变量,它是用来专门存放地址的。 必须将指针变量定义为“指针类型”。 一般形式 基类型 *指针变量名; 基类型:指针变量所指向的变量的类型。 例 float *pointer1; int *pointer2; char *pointer3; 指针变量的定义是通过*进行的 定义后的指针变量只能赋值指针,不能赋值为一般数据类型 指针变量的引用 & 与*运算符 单目运算,优先级2,自右向左结合 & 取地址运算符 取变量的地址,取出的地址一定是一个常数 &变量名=指针值 × * 指针运算符 指针变量所指向的内存单元,可称为指针变量所指的变量 与指针变量定义中的*不同 “*指针变量” 可以作为一个基类型变量来用 指针变量的初始化 一般形式 基类型 *指针变量名=初始地址值; 指针变量使用前必须先初始化或赋初值 零指针与空类型指针 零指针:(空指针) 定义:指针变量值为零 表示: int * p=0; 空类型指针 定义:指针变量不指向哪一种类型数据 表示: void *p; 使用时要进行强制类型转换 练习 指针变量作为函数参数 作用是将变量的地址传送到另一个函数中 想通过函数调用得到n个要改变的值,可以: 在主调函数中设n个变量,用n个指针变量指向它们 将指针变量作实参,将这n个变量的地址传给所调用的函数的形参 通过形参指针变量,改变该n个变量的值 主调函数中就可以使用这些改变了值的变量 例:输入a、b、 c3个整数,按大小顺序输出。 数组的指针是指数组的起始地址 数组元素的指针是数组元素的地址 指向数组元素的指针 用法与指向变量的指针变量相同 int,a[5],*p,*q; p=&a[0]; q=&a[3]; 指针变量与指针的运算 指针变量的赋值运算 p=&a; (将变量a地址?p) p=array; (将数组array首地址?p) p=&array[i]; (将数组元素i地址?p) p1=p2; (指针变量p2值?p1) 不能把一个整数?p,也不能把p的值?整型变量 int i,*p; *p=1000;i=p; 出现编译警告,但可以执行 指针的算术运算 p++/++p 指针后移一个单元(元素) p--/--p 指针前移一个单元(元素) p+n 指向p指针下的n个单元(元素) p-n 指向p指针上的n个单元(元素) p-q 求两指针之间单元(元素)个数 单元(元素)大小与指针的具体数据类型有关,如当指针变量的基类型为整型时,一个单元(元素)的大小为2bytes;当指针变量的基类型为浮点型时,一个单元(元素)大小为4bytes。 例: 指针的关系运算 实质是两个地址之间的比较,地址大的指针大,地址小的指针小 p>q p>=q p

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值