下载此文档

谈CC++指针精髓.doc


文档分类:IT计算机 | 页数:约8页 举报非法文档有奖
1/8
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/8 下载此文档
文档列表 文档介绍
[摘要]
    指针是C和C++语言编程中最重要的概念之一,也是最容易产生困惑并导致程序出错的问题之一。利用指针编程可以表示各种数据结构, 通过指针可使用主调函数和被调函数之间共享变量或数据结构,便于实现双向数据通讯;并能像汇编语言一样处理内存地址,从而编出精练而高效的程序。指针极大地丰富了C和C++语言的功能。
    在本文中,主要分两部分对指针进行讨论。首先,基础篇讨论关于指针的内容和运算操作等,可以是读者对指针的知识有一定了解和认识;随后在使用篇中重点讨论指针的各种应用,揭破指针在日常编程中的精髓,从而使读者能够真正地了解、认识和使用指针。
    第一篇:基础篇
   
    谈到指针,它的灵活性和难控制性让许多程序员谈虎色变;但它的直接操作内存,在数据
    操作方面有着速度快,节约内存等优点,又使许多C++程序员的深爱不以。那么指针究竟是怎么样一个概念呢?
    其实, 指针就是一类变量,是一类包含了其他变量或函数的地址的变量。与其他变量所不同的是,一般的变量包含的是实际的真实的数据,而指针是一个指示器,它告诉程序在内存的哪块区域可以找到数据。
    好了,在这里我们可以这样定义指针:指针是一类包含了其他变量或函数的地址的变量,它里面存储的数值被解释成为内存的地址。
   
    简单讲,指针有四个方面的内容:即指针的类型,指针所指向的类型,指针的值,指针本身所
    占有的内存区。下面我们将分别阐述这些内容。
   
    从语法的角度看,指针的类型是指把指针声明语句中的指针名字去掉所剩下的部分。这是指针本身所具有的类型。例如:
 int*ip;            //指针的类型是int*
char*ip;           //指针的类型是char*
int**ip;           //指针的类型是int**
int(*ip)[5];        //指针的类型是int(*)[5]
   
    当你通过指针来访问指针所指向的内存区时,指针所指向的类型决定了编译器将把那片内存区里的内容当做什么类型来看待。从语法的角度看,指针所指向的类型是指针声明语句中的指针名字和名字左边的指针声明符*去掉所剩下的部分。例如:
 int*ip;            //指针所指向的类型是int
char*ip;           //指针所指向的类型是char
int**ip;           //指针所指向的类型是int*
int(*ip)[5];        //指针所指向的类型是int()[5]
    (或称指针所指向的内存区)
    指针的值或者叫指针所指向的内存区或地址,是指针本身存储的数值,这个值将被编译器当作一个地址,而不是一个一般的数值。在32位程序里,所有类型的指针的值都是一个32位整数,因为32位程序里内存地址全都是32位长。指针所指向的内存区就是从指针的值所代表的那个内存地址开始,长度为sizeof(指针所指向的类型)的一片内存区。以后,我们说一个指针的值是XX,就相当于说该指针指向了以XX为首地址的一片内存区域;我们说一个指针指向

谈CC++指针精髓 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数8
  • 收藏数0 收藏
  • 顶次数0
  • 上传人weizifan339913
  • 文件大小70 KB
  • 时间2018-08-13