还剩23页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
使用指针的技巧汇报人PPT添加目录标题指针与数组0104指针的基本概念指针与函数0205目录指针的运算指针的高级应用0306添加章节标题指针的基本概念指针的定义指针是一种数据类型,用于存指针变量可以指向任何类型的储内存地址数据指针可以访问和修改它所指向指针是C语言的重要特性,广泛应用于数据结构和算法中的内存地址中的数据指针的变量声明l指针是一种特殊的变量,用于存储其他变量的地址l声明指针时,需要使用星号(*)来标识l例如,int*p;表示声明一个名为p的指针,它指向一个int类型的变量l指针的声明可以与其他变量一起声明,例如int a,*p=a;表示声明一个名为a的int类型变量和一个名为p的指针,p指向a指针的初始化指针变量用于初始化方式在初始化值可以初始化示例int存储地址的变量声明指针变量时是任意有效的地*p=a;进行初始化址值指针的运算指针的算术运算指针减法将指针指向的位指针比较比较两个指针指置减少一个单位向的位置是否相同指针加法将指针指向的位指针赋值将一个指针的值置增加一个单位赋给另一个指针指针的关系运算指针的相等性判断两个指针是否指向同一个内存地址指针的不等性判断两个指针是否指向不同的内存地址指针的加法运算将指针指向的地址加上一个偏移量指针的减法运算将指针指向的地址减去一个偏移量指针的位运算指针的位运算包括与、或、异位运算可以提高程序的执行效或、左移、右移等操作率位运算可以实现一些特殊的功位运算需要注意数据的大小端问题,避免数据错误能,如位图、位掩码等指针与数组数组的指针l指针与数组指针可以指向数组的元素,通过指针可以访问和修改数组的元素l指针与数组下标指针与数组下标是等价的,可以通过指针来访问和修改数组的元素l指针与数组名数组名是一个指针,指向数组的第一个元素,可以通过数组名来访问和修改数组的元素l指针与数组遍历可以通过指针来遍历数组,访问和修改数组的元素指针的数组访问元素通过指针数组名和下标访指针数组用于存储多个指针的数组问元素应用场景处理字符串、链表等数据释放内存使用free函数释放指针数结构组占用的内存初始化使用malloc或calloc函数分配内存指针与二维数组二维数组的定义二维数组的访问二维数组的遍历二维数组的排序通过指针遍历二维通过指针对二维数由多个一维数组通过指针访问二数组的所有元素组的元素进行排序组成的数组维数组的元素指针与函数指针作为函数参数指针作为函数参数,可以实指针作为函数参数,可以实现函数的递归调用现函数的动态内存分配指针作为函数参数,可以实指针作为函数参数,可以实现数据的传递和修改现函数的多态性返回指针的函数指针作为函数的指针作为函数的指针作为函数的指针作为函数的返回值参数局部变量静态变量函数指针概念指向函数的声明使用指针类使用通过函数指注意事项函数指针的类型必须与所指向的函型定义函数指针,指针,可以存储函针调用函数,如数类型一致,包括参数如int*pint,数的地址pa,b;类型和返回值类型int;指针的高级应用动态内存分配动态内存分配的概念在程序运行时动态分配内存空间动态内存分配的方法使用malloc、calloc、realloc等函数动态内存分配的优点可以避免内存浪费,提高内存利用率动态内存分配的注意事项需要及时释放不再使用的内存空间,避免内存泄漏链表操作链表的定义一种线性数据结构,由一系列节点链表的删除找到要删除的节点,将其从链组成,每个节点包含一个数据域和一个指针域表中删除,并释放其占用的内存空间链表的创建通过动态分配内存,创建链表的插入找到要插入的位置,创新的节点,并将新节点插入到链表中建新的节点,并将其插入到链表中链表的遍历通过指针域,依次访问链链表的排序通过比较节点中的数据表中的每个节点域,对链表进行排序结构体与联合体的使用结构体将不同类型的数联合体将不同类型的数指针与结构体通过指据组合在一起,形成一个据存储在同一个内存空间针访问结构体中的成员整体中,节省内存结构体与联合体的比较结构体指针与联合体通过指适合存储不同类型的数据,联合针访问联合体中的成员体适合存储相同类型的数据内存管理指针与内存的关系动态内存分配使内存释放使用内存越界指针访问指针是内存地址的用malloc、free函数释放不超出其合法范围的内存,可能导致程序崩表示,通过指针可calloc、再使用的动态内存,溃或数据损坏,需要以访问和操作内存realloc等函数避免内存泄漏避免动态分配内存感谢您的观看汇报人PPT。
个人认证
优秀文档
获得点赞 0