明确这几点,再去理解指针:

1. 指针是一种变量

2. 指针这个变量有他自己的值;

3. 指针这个变量有他自己的类型,它的类型代表的是它指向的数据的类型

4. 顺着第二点,他的值是一个地址,这个地址对应的内存单元存放着相应的数据

重点是第二和第三点,带着这两点去理解指针就容易多了。举例:【C】指针(一)

上例中,运行结果为:

【C】指针(一)

这个例子中:

pointer就是一个指针变量,而后来将 string[0]的地址赋给了它,在本例中就是0x7fff027564fd,赋值方法是通过&这个符号;

* pointer的值就是这个指针变量指向的值,即 string[0],在这个例子中是  "

这个指针变量的类型是 char,也就是说它指向的数据类型是char的。

值得注意的是,在定义指针变量的时候,*pointer并不是指针名称,pointer才是指针的名称,所以可以看到,在显示指针的时候用的是p%,以及pointer。


相关文章: