1.指針的概念:一個變量在內存中所占存儲單元的地址號就是該變量的指針。
如:int i;
i =20;
假設i變量在內存中所占存儲單元的地址號為:1000,此時稱1000這個這個存儲地址為變量i的指針,而20是變量i的值。
指針有類型:什么類型的指針只能指向該類型的對象,不能指向不同類型的對象。
2.指針變量的定義
專門存放變量地址的變量稱為指針變量。和其他變量的定義類似。指針變量在使用前必須定義其類型。其定義形式為:類型標識符 *指針變量名;
如:int i = 50;
int *ip;
ip = &i;
說明:指針變量名前的“*”表示該變量為指針變量,他不是變量名本身的一部分。
此處的類型標識符是該指針變量所要指向的變量的類型。
變量的指針和指向變量的指針變量的區分:指針是某一變量在內存中所占存儲單元的地址是一個地址值。指針變量是專門存放其他變量的地址變量,是一個變量。
3.初始化指針
操作符&:取址
int * iptr;
int iCount = 18;
iptr = &iCount;//將地址賦給存放地址的變量
注意:指針在使用前,要進行初始化。
4.間接引用指針
操作符 *:取出指針變量所指向的變量的內容,后面跟指針變量。
#include<iostream.h>
void main(){
int* iptr;
int iCount = 18;
iptr = &iCount;
count <*iptr <endl;//間接引用指針
}
說明:*iptr為取出指針變量所指向變量的內容。即由于iptr是指向變量iCount的,所以*iptr與iCount是等價的。
5.指針變量的地址
一個指針變量和普通變量一樣,在內存中也占存儲單元,所以指針變量也有其地址,這就是指針變量的地址。
#include<iostream>
void main(){
int iCount = 18;
int *iptr = &iCount;
*iptr = 58;
}