一.指针定义演练
练习一.
//定义三个指针变量p1,p2,p3,分别保存a,b,c的地址
int *p1=&a;
int *p2;
p2=&b;
int *p3=&c;
//通过p1,p2,p3,实现c=a+b;不能直接使用a,b,c
*p3=*p1+*p2;
//通过p1,p2,p3,实现c=a*b
*p3=*p1**p2;
//通过p3,实现c=c+100;
*p3+=100;
//通过p1,p2,p3,输出a,b,c的值
printf("%d,%d,%d\n",*p1,*p2,*p3);
练习二.
#include<stdio.h>
int main()
{
char a;
int b;
double c;
char *p1=&a;
int *p2=&b;
double *p3=&c;//定义指针p1,p2,p3分别保存a,b,c的地址(指针类型必须严格相同才能赋值)
*p1='X';//通过p1将a设为'X'
*p2=100;//通过p2将b设为100
*p3=23.4;//通过p3将a设为23.4
printf("%c,&d,%f\n",*p1,*p2,*p3);//通过p1,p2,p3输出a,b,c的值
return 0;
}
二.指针大小
在32位平台(X86)为4字节,在64位平台(X64)为8字节(2进制)