关闭

C语言的指针(基础篇章)

标签: c语言
103人阅读 评论(0) 收藏 举报
分类:

一、内存与指针

**内存是以字节为单位进行编址的,内存中的每个字节都对应一个地址,通过地址才能找到每个字节。而我们常说的变量,变量的内存地址就是变量的指针。切记,指针是有类型地址常量。
**

  内存的快捷方式——指针

定义指针变量的一般形式:

 type *  variable  (指向数据类型 *指针变量名)

二、指针变量

  • 重点就是区分一下下面的本质区别:
    在int *var中; var、&var、*var 者的区别?
    var——指针变量
    &var——对指针变量取地址
    *var——取指针变量地址所指向地址的内容
  • 给个例子:输入两个整数,存储在变量a和b中,当a小于b时,使用指针交换a和b并输出。
    这时大脑要有逻辑思想(以图形的形式吧):

三、指针的运算

指针运算的本质是指针中存储的地址的运算。
- eg:p+n、p-n、p++、p–、++p和–p等,其中n是整数。
解释:将指针p加上或者减去一个整数n,表示p向地址增加或减小的方向移动n个元素单元,从而得到一个新的地址,使能访问新地址中的数据。每个数据单元的字节数取决于指针的数据类型。
#include

四、指针的一些基础小结

  • 指针变量的初始化问题小结:
    指针变量在使用前必须要初始化,把一个具体的地址赋给它,否则引用时会有副作用,如果不指向任何数据就赋“空值”NULL。
  • 变量与指针变量:
    变量的实质是代表“内存中的某个存储单元”。指针变量是用来存储地址,而一般变量是存储数值的。指针变量可指向任何一种数据类型,但不管它指向的数据占用了多少字节,一个指针变量占用4个字节。
  • 数组名与指针变量:
    数组名是一个常量,不允许重新赋值。
    指针变量是一个变量,可以重新赋值。

来自本人的简书(链接):
http://www.jianshu.com/writer#/notebooks/4124910/notes/4155638

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1907次
    • 积分:171
    • 等级:
    • 排名:千里之外
    • 原创:16篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档