C语言程序设计课件作者刘嘉敏章节07指针.pptVIP

  • 1
  • 0
  • 约5千字
  • 约 55页
  • 2017-11-12 发布于广东
  • 举报

C语言程序设计课件作者刘嘉敏章节07指针.ppt

3. 指向函数的指针 定义指向函数的指针变量的一般形式为 数据类型 (*指针变量名)(函数参数表列); 例如: int (*p)(int,int); p=max; 对 p=max(a,b); 错 p+n,p++,p--等运算无意义 第七章 指 针 7.3 指针与函数 3. 指向函数的指针 用指向函数的指针作函数参数 指向函数的指针变量的一个重要用途是把函数的地址作为参数传递到其他函数 指向函数的指针可以作为函数参数,把函数的入口地址传递给形参,这样就能够在被调用的函数中使用实参函数 第七章 指 针 7.3 指针与函数 7.1 指针概述 7.2 指针与数组 7.3 指针与函数 7.4 复杂指针 7.5 内存的动态分配和指向它的指针变量 第七章 指 针 1. 指针数组 一个数组,若其元素均为指针类型数据,称为指针数组,也就是说,指针数组中的每一个元素都存放一个地址,相当于一个指针变量。 定义一维指针数组的一般形式为 类型名*数组名[数组长度]; int *p[4]; 7.4 复杂指针 第七章 指 针 1. 指针数组 指针数组比较适合用来指向若干个字符串,使字符串处理更加方便灵活 可以分别定义一些字符串,然后用指针数组中的元素分别指向各字符串 由于各字符串长度一般是不相等的,所以比用二维数组节省内存单元 7.4 复杂指针 第七章 指 针 二级指针变量定义的格式如下: 数据类型 **指针变量名; 给二级指针变量赋值的一般格式为: 二级指针变量=(一级指针变量); 2. 多级指针 第七章 指 针 7.4 复杂指针 3. 指针数组作为main函数的形参 指针数组的一个重要应用是作为main函数的形参。在以往的程序中,main函数的第一行一般写成以下形式: int main() 或 int main(void) 表示main函数没有参数,调用main函数时不必给出实参。 这是一般程序常采用的形式。 第七章 指 针 7.4 复杂指针 3. 指针数组作为main函数的形参 实际上,在某些情况下,main函数可以有参数,例如: int main(int argc,char *argv[]) 其中,argc和argv就是main函数的形参,它们是程序的“命令行参数”。 argv是*char指针数组,数组中每一个元素(其值为指针)指向命令行中的一个字符串。 第七章 指 针 7.4 复杂指针 尚辅网 / 7.1 指针概述 7.2 指针与数组 7.3 指针与函数 7.4 复杂指针 7.5 内存的动态分配和指向它的指针变量 第七章 指 针 1. 地址、指针和指针变量 如果在程序中定义了一个变量,在对程序进行编译时,系统就会给该变量分配内存单元 编译系统根据程序中定义的变量类型,分配一定长度的空间 例如,VC++为整型变量分配4个字节,对单精度浮点型变量分配4个字节,对字符型变量分配1个字节 7.1 指针概述 第七章 指 针 1. 地址、指针和指针变量 内存区的每一个字节有一个编号,这就是“地址”,它相当于旅馆中的房间号。 在地址所标识的内存单元中存放数据,这相当于旅馆房间中居住的旅客一样。 由于通过地址能找到所需的变量单元,我们可以说,地址指向该变量单元。 将地址形象化地称为“指针” 7.1 指针概述 第七章 指 针 1. 地址、指针和指针变量 务必弄清楚存储单元的地址和存储单元的内容这两个概念的区别 例如: 7.1 指针概述 第七章 指 针 int i=3,j=6,k; printf(“%d”,i); 通过变量名i 找到i的地址2000,从而从存储单元读取3 int i=3,j=6,k; k=i+j; 从这里取3 将9送到这里 从这里取6 直接存取 int i=3,j=6,k; 定义特殊变量i_pointer 将i的地址存到这里 间接存取 i_pointer=i; *i_pointer=50; i 2000 3 2000 i_pointer *i_pointer 2000 3 直接存取 间接存取 为了表示将数值3送到变量中,可以有两种表达方法: 将3直接送到变量i所标识的单元中,例如:i=3; 将3送到变量i_pointer所指向的单元(即变量i的存储单元), 例如:*i_pointer=3; 其中*i_pointer表示i_pointer指向的对象 1. 地址、指针和指针变量 指向就是通过地址来体现的 假设i_pointer中的值是变量i的地址(2000),这样就在i_pointer和变量

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档