指针一直是 C 语言的瑞士军刀,它的使用程度反应了一个 CODE 的水平。
今天我们就指针 p 的自增运算来作为我们的第一步基石。
在说指针之前,我们说说整形变量 i 的自增,对于整形变量 i 它的值域是表示一个整数值,所以自增就是 i 变量加一,另外自增说到底是一个预算符,所以在这里我们要引入一个很重要的概念——运算符重载,对于不同的前缀,就有不同的预算符重载函数,运算符重载加上函数重载就是 C 语言中的静态多态性。
那么,我们就明白了不同类型,自增预算符所代表的意思也就不同。
指针里面放的是变量的地址,那么自增就是地址的变迁,但是不同的是变迁的地址是根据类型的不同而不同。
例如:整数是四个字节,字符型是一个字节。
详情见程序
#include<iostream>
using namespace std;
int main()
{
int integer_Array[5];
char character_Array[5];
int * int_Point = integer_Array;
char * char_Point = character_Array;
for(int i = 0; i<5; i++)
{
cout<<"int_Point = "<<i+1<<" address = "<<int_Point<<endl;
/*
*用 cout 看不见地址,这里打印指针的 "<<" 重载了,具体的自行操作
*/
printf("char_Point = %d address = %0x\n",(i+1),char_Point);
int_Point++;
char_Point++;
}
return 0;
}
运行图