指针
指针和指针变量
指针变量存放的是地址
存放地址的变量是指针变量,存放的地址称作指针
- 定义指针变量
- 形式: 类型名 *指针变量名
- 范例:
- char *pa; //定义一个指向字符型的指针变量
- int *pb; //定义一个指向整型的指针变量
取地址运算符和取值运算符
如果需要获取某个变量的地址,可以使用取地址运算(&)
如:
char *pa=&a;
int pd=&f;
如果需要访问指针变量指向的数据,可以使用取值运算符()
如:
printf("%c,%d\n",*pa,*pb);
要避免访问未初始化的指针
#include<stdio.h>
int main(){
char a='f';
int b=1546;
char *pa=&a;
int *pb=&b;
printf("a=%c\n",*pa);
printf("b=%d\n",*pb);
*pa='C';
*pb+=1;
printf("NOW,a=%c\n",*pa);
printf("NOW,b=%d\n",*pb);
printf("the address of a is :%p\n",pa);
printf("the address of b is :%p\n",pb);
printf("the address of a is :%p\n",&a);
printf("the address of b is :%p\n",&b);
printf("the address of pa is :%p\n",&pa);
printf("the address of pb is :%p\n",&pb); //输出地址是%p
return 0;
}
可以通过上例了解取值*和取址运算符的含义