指针 这个名词对大家来说一定不陌生,虽然可能具体是怎么回事,但多少身为程序员的我们一定是听说过,而且对于我们孤傲高冷的程序猿,在还是单身狗的情况下往往会被人戏说:你这个没有对象的野指针。哈哈,总之,指针对于C语言来讲是最基本的,但运用起来也是有难度的,下面我们就简单说一下C语言指针。
我们知道,C语言是面向过程的,没有类对象之分,对于指针来说,我们通俗的可以这么去给它一个定义。
1、指针:就是用来存放其他变量的内存地址的。这里需要记住的是,指针变量仅仅是用于存放其他变量的地址的。
下面我们还是通过代码,先来观察指针的一个基本用法:
#include<stdio.h>//引入头文件
void main(){
int a = 1;
int* ap = &a;//定义指针变量ap,int*的意思是声明一个指向int型变量的指针变量,&的意思是取a的地址
printf("%p\n",ap);//打印变量a的地址
printf("%p\n",&ap);//打印指针变量ap的地址
/*
分别声明不同类型的指针变量,用于指向特定类型的变量的地址
分别打印这些不同类型的指针变量的所占内存的大小,即长度
*/
char* cp;
float* fp;
double* dp;
short* sp;
printf("%d\n",sizeof(ap));
printf("%d\n",sizeof(cp));
printf("%d\n",sizeof(fp));
printf("%d\n",sizeof(dp));
printf("%d\n",sizeof(sp));
//拿到一个变量的指针就可以修改该变量的值
*ap = 60;
printf("%d\n",a);
}
输出结果是:
0060FF0C
0060FF08
4
4
4
4
4
60
我们现在简单讲解一下上面的代码,其实上面的注释已经写的很清楚了,指针变量也是变量,md这是在说什么。我们在是