C语言指针学习基础笔记

概述

指针呢,自己理解的就是指向地址,直接对地址进行操作,具体接触到的有指针常量,常量指针,指针函数,指针参数

指针

void main()
{
	int a=1;//定义一个int型变量
	int *q=NULL;//定义一个指向int类型的指针变量
	q=&a;//指针使用前必须先给定一个初地址,对q操作就是对地址操作,因此需要时用&取地址符号
	printf("%d\n",*q);//输出1
	*q=20;				//对*q操作,自己的理解呢就向是给其他变量复制或操作一样
	printf("%d\n",*q);//输出20
	*q=a+1;
	printf("%d\n",*q);//输出21
}

在这里插入图片描述

常量指针

就是使用const关键字进行修饰的指针,含义是所修饰的不会改变

void main(void)
{
	int a=1;
    int *const q=&a; //修饰的q不会改变,但可以通过*a进行修改
	*q=10;
	//q=10;//如果使用这句便会报错,因为const指的是q不变
	printf("a is %d\n",a);//a=10因为q的地址指向了a因此改变*q的值,a的值也会随之变化
	printf("q is %d\n",*q);//输出10
}

在这里插入图片描述

指针常量

void main(void)
{
	int a=1;
    int b=10;
    int const *q=&a; //修饰的*q不会改变,但可以通过a进行修改
	q=&b;
	//*q=10;//如果使用这句便会报错,因为const指的是q不变
	printf("q is %d\n",*q);//输出10
}

总结

1.*在const之前就是指针常量,常量不可以变,但地址可以变。
2.在const之后就是常量指针,地址不能变,但常量可以变。
3.想要像对变量一样的直接对指针变量赋值便使用
q(q代表自己定义的变量)=x;如果想将其他变量的值赋给指针变量使用q(赋值变量指针)=&a(代表需要赋值的变量名)。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值