C 第08章指针.ppt

  1. 1、本文档共86页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C 第08章指针

第八章 指针 第一节 指针的概念 概述 指针变量 指针变量 定义指针变量 P145 建立指针 指针变量的赋值 间接引用指针变量 p146 指针变量的地址 ch8_2 指针变量的多次赋值 指针变量p没被初始化:危险 区分指针与整型数 指针的初始化 指针的类型 ch8_3 例 指针的理解 例 使用指针变量 第二节 指针的运算 指针运算 指针的运算 ch8_4 第三节 指针与数组 用数组名初始化指针 指针访问数组 数组和指针的相互转换 P153 例:ch8_6 例:ch8_6 冒泡排序程序(指针法) 指针与二维数组 二维数组的首地址 第m行第n列元素的地址 二维数组的指针 使用二维数组型指针 使用指向数组元素的指针 例 第四节 堆(动态)内存分配 动态内存分配 堆内存 malloc和free函数 ch8_7 free函数 new 和 delete (C++) delete 运算符 杜绝野指针 动态数组求Fibonacci数列的前n项 第五节 用const限定指针 用const限定指针 指向常量的指针(常量指针) ch8_10 指针常量 指向常量的指针常量(常量指针常量) 第六节 指针与函数 指针作为函数的形参 值传递 与指针传递ch8_12 向函数传递数组 ch8_11 指针函数 第七节 字符指针 字符指针 字符指针初始化 通过指针访问字符数组 字符指针和字符串的比较 例ch8_17 使用字符指针 第八节 void指针 void指针及其性质 void指针及其性质 void指针作形参 返回void指针的函数 第九节 指针数组 指针数组 指针数组 区分数组指针与指针数组 *指向指针的指针 第十节 函数指针 函数指针 p177 函数指针的内在差别 End of chapter eight int* getInt(char* str) //指针函数 { int value=20; cout str endl; return value; //warning: 将局部变量的地址返回是不妥的 } void somefn(char* str) { int a=40; cout str endl; } void main() {int* pr=getInt(input a value:); //赋值取自返回的指针值 cout *pr endl; //第一次输出*pr: 20 somefn(It is uncertain.); cout *pr endl; //第二次输出*pr: 4198646 } 第六节 指针与函数 不要返回局部变量的地址 不要返回局部变量的地址! 字符指针就是指向字符型内存空间的指针变量,一般的定义语句如下: char * p = NULL; 使用字符指针可以访问字符数组和字符串。 第七节 字符指针 两类字符串: 一类用于字符数组初始化 char buffer[] = “Hello, world!”; 它在完成将内容填写到所创建的字符数组之后,随即消失。 另一类作为表达式,或输出,或赋值,或参加运算,它在运行中有它自己的存储空间,可以寻址访问。如: cout“good”endl; 字符串、字符数组名、字符指针属于同一类型,为指向字符的指针。 字符串为常量,存放在全局数据区的const区。 只要将字符指针赋值为字符数组的首地址或字符串常量便可以实现对字符数组或字符串的访问: char str[] = Hello, world! ; char *p = str; //将字符数组名赋给字符指针 char *p1 = Hello, world! ; //将字符串赋给字符指针 此时,p被初始化为字符数组str的首地址, p1被初始化为字符串的首地址,使用p可以访问数组str的每一个元素。 第七节 字符指针 char str[] = Hello, world! ; char *p = str; //将字符数组名赋给字符指针 char *p1 = Hello, world! ; //将字符串赋给字符指针 输出字符指针就是输出字符串: cout p; // 即输出:Hello,world!,等价于coutstr; cout p1; //即输出:Hello,world! 输出字符指针的间接引用就是输出单个字符: cout *(p+i); // 输出p的第i个字符 cout *(p1+i); //输出p1的第i个字符 由

文档评论(0)

jiupshaieuk12 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档