这份回顾主要是指针的初级内容,是前天刚学的,由于今天晚上刚好有时间写回顾,就把上次没做好的回顾(4)和这篇放在一起了,C语言中的指针一直是很头疼的一个学习内容,但今天大可不必害怕,因为都是一些很简单易懂的理论内容。
/*指针是编程语言中的一个对象,利用地址,它的值直接指向该变量单元。
因此,将地址形象化的称为指针,意思是通过它能找到以它为地址的内存单元*/
首先给出老师课件对于指针的定义,我们学习一个新的内容的时候,对于该内容的定义一定是要牢记的,这是教学者将该内容浓缩后的精华,通过这份定义,我们可以对于指针的内容更加容易上手。
int main()
{
int a = 10;
int* p = &a; // 指针变量
// 指针就是变量,用来存放地址的变量。存放在指针中的值都被当作地址处理
return 0;
}
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;
// char* pc = &a;
// *pc = 0;
// 指针类型决定了指针进行解引用操作的时候,能够访问空间的大小
// int* p *p 能够访问 4个字节
// char* p *p 能够访问 1个字节
// double* p *p 能够访问 8个字节
// printf("%d\n",pa);
// printf("%d\n", pc);
return 0;
}
第一个main函数其实不用管,就是简单的使用一下指针与地址
这里需要注意第二份main函数里的各个意义,尤其是对不同类型的指针可以访问字节数的区分,要分外牢记。是可以出题的。
int main()
{
int a = 0x11223344;
int* pa = &a;
char* pc = &a;
printf("%p\n", pa);
printf("%p\n", pa+1); //加了4
printf("%p\n", pc);
printf("%p\n", pc+1); // 加了1
// 指针类型决定了:指针走一步走多远(指针的步长)
return 0;
} [7] 0 int