
指针使用灵活,但也最易犯错,当指针指定到错误的地址往往很不容易调试.
因此掌握指针的正确使用是C++编程的一门基本功.

本文有关的指针操作:
//*1**********使用指针与地址运算符*************
//*p表示p地址内指示的内容,p表示存储地址.
//赋值时*p赋予所指变量的内容信息*p=a;
//p用来赋予所指变量的地址信息p=&a.
//输出时p用来输出所指变量的内容信息,&p用来输出p的地址信息.
//指针类型在使用时,不可指向不存在的(void)位置,否则会造成不可预料的结果,
//基本上指针遵循下述两种情况:
//1.指向已存在的措针
//2.要求分配内存自行使用(或内存管理)
UsePoints();
//*2**********指针地址运算*********************
//char *ch ; ch++;ch--;char类型在内存中占一个字节空间,地址增减量为1.
//int *ptr; 4
//float *f; 4
//double *d; 8
//*p++;p++;*--p;*++p;(*p)++;(*p)--;
CalAddressOfPointer();
//*3**********指针的内存配置********************
//配置单一内存
//配置单一内存并赋值
//配置多个内存,此种方式以指针当数组使用,又有固定大小或弹性大小.
PointerMemSet();
//*4*********指针变量与二维数组*****************
ArrayAndPointer();
//*5*********指针与函数*************************
//一般变量传递参数给指针,再返回来.
VariMemberAndPointer();
//传址方式传参数
//使用地址运算符"&"也可实现,将数据从函数的参数部分返回参数.
VariAddAndFunction();
//前两种方法的混合使用
VariAndPointer();
//指针传给指针
//大家都是指针,避免传递参数时使用地址运算符"&"不留神时造成的错误.
PointerAndPointer();
//函数名称以指针返回
PointerFunction();
//*6******指针与结构******************************
PointerAndStruct();
//*7******指针的指针(双指针)**********************
DoublePointer();
//*8******以双重指针来赋值二维数组****************
DoublePointerAndArray();
//*9******指针指向函数****************************
PointerToFunction();
//*10*****指针数组********************************
PointerArray();
//*11*****字符数组与字符串的常数设置**************
CharArrayAndString();
//*12*****类的指针传递****************************
UseDataHelperArray();

详细代码:

//***********使用指针与地址运算符*************
//*p表示p地址内指示的内容,p表示存储地址.
//赋值时*p赋予所指变量的内容信息*p=a;
//p用来赋予所指变量的地址信息p=&a.
//输出时p用来输出所指变量的内容信息,&p用来输出p的地址信息.
//指针类型在使用时,不可指向不存在的(void)位置,否则会造成不可预料的结果,
//基本上指针遵循下述两种情况:
//1.指向已存在的措针
//2.要求分配内存自行使用(或内存管理)
void UsePoints()
相关文章: