/指针------------------------------------------------------------------------------------------
// 1,指针是----------
// 通过它能找到以它为地址的内存单元
//int main()
//{
// int a = 10;//开辟一块空间
// int* p = &a;//将变量a的地址取出,存放在p变量中,p为指针变量
// return 0;
//}
// 2,指针和指针类型---------
// ①指针类型决定了指针进行解引用操作的时候,能访问空间的大小
// char* p *p解引用能访问1个字节
// int* p *p解引用能访问4个字节
// double* p *p解引用能访问8个字节
// ②指针类型决定了+- 计算的指针步长 向前或向后走一步有多大 单位是字节
// int* p; p+1 --> 4个字节
// char* P;p+1 --> 1个字节
// double*p; p+1 --> 8个字节
//
//int main()
//{
// /*printf("%d\n", sizeof(char*));
// printf("%d\n", sizeof(int*));
// printf("%d\n", sizeof(short*));
// printf("%d\n", sizeof(double*));*/
// int a = 0x11223344;
// int* pa= &a;
// *pa = 0;//解引用pa可以操作4个字节
// //char* pc = &a; char* 解引用只能操作一个字节
//
// return 0;
//}
//int main()
//{
// int a = 0x11223344;
// int* pa = &a;
// //char* pc = (char*)&a;
//
// printf("%p\n", pa);
// printf("%p\n", pa + 1);//指针+1 加了一个类型的字节数量 int 是4个字节
//
// //printf("%p\n", pc);
// //printf("%p\n", pc+1);
//
//
// return 0;
//}
//int main()
//{
// int arr[10] = { 0 };
// int* p = arr;//数组名为首元素地址
// int i = 0;
// for (i = 0; i < 10; i++)
// {
// *(p + i) = 1;
// }
//
// return 0;
//}