c语言指针基础概念,c语言指针基础之指针的基本概念

c语言指针基础之指针的基本概念

#include "stdafx.h"

int main()

{

int a = 3, *p;

p = &a; //把变量a的地址赋值给指针p,即p指向a

printf("a = %d,*p = %d\n",a,*p); //输出变量a的值和指针p所指向变量a的值(*p即代表p指向变量的值)

*p = 10; //相当于对a重新赋值

printf("a1 = %d,*p1 = %d\n", a, *p);

printf("please input new a:");

scanf("%d",&a); //输入a,这里其实是把输入的值存储到变量所在的内存单元里,即地址

printf("a2 = %d,*p2 = %d\n", a, *p);

(*p)++;

printf("a3 = %d,*p3 = %d\n", a, *p);

return 0;

}

注意:

1、指针声明符*在定义指针变量时使用,说明被定义的那个变量是指针

2、定义多个指针变量时,每一个指针变量的前面都必须加上*

3、把变量的地址赋值给指针:p = &a

4、p就是地址,*p是地址指向的变量,也就是a

5、p = &a,则*p = *&a

6、(*p)++等价于a++,* p = * p + 1等价于a = a + 1 ,++ *p 等价于++a

7、*p ++等价于*(p++),即先取*p的值(a的值)作为表达式的值,再将指针p的地址位加1,运算后,p不再指向a

8、不能用数值作为指针变量的初值,但是可以将一个指针变量初始化为一个空指针,

例如:int *p = 1000 错误

int *p = 0 正确 ,这个0是ASCII字符NULL的值,即将指针变量初始化为空指针

&p 指针p的地址

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值