指针练习:
指针:
p不能同时保留两个地址
*p是一个间接访问(解引用)
//指针的简单应用
/*int main()
{
int a=10;
int b=20
int *p=&a;
*p=100;
p=&b;
p=200;
return 0;
}//
指针的转换:数据类型要匹配
int main()
{
char a=‘x’;
int p=(int)&a;//强制转化,类型不匹配
}/
小应用:
int main()
{
int a=10;
int b=20;
int c;
int *p1=&a,*p2,p3;
p2=&b;//星号在不定义时表示解引用 不能这样写p=&b;使用不要类型
p3=&c;//定义三个指针p1,p2,p3分别指向a,b,c
*p3=*p2+*p1;
printf("%d\n",*p3); //通过p1,p2,p3将a+b的值赋给c(表达式中不能出现a,b,c)
printf("%d %d %d\n",*p3,*p2,*p1); //通过p1,p2,p3将a,b,c的值输出(表达式中不能出现a,b,c)
*p3=*p1**p2;
printf("%d\n",*p3);
printf("%d\n",p3); } / //通过p1,p2,p3将ab的值赋给c(表达式中不能出现a,b,c)
结果显示:
在这里第四行输出的是p3的地址。
欢迎指正;
2020-12-11
最新推荐文章于 2024-07-13 21:46:31 发布