指针的基础用法

1.什么是指针

指针本质其实就是一个地址,我们所说的指针指的是指针变量。指针变量就是一个存放地址的变量。

2.指针定义

与其他变量一样,C系统会为指针变量在内存分配储存单元,在我们定义一个变量的时候,要确定它的类型。int ,char,float 在定义指针变量时也是一样的,必须确定指针类型。int 变量的指针需要用 int 类型的指针存储,float 变量的指针需要用 float 类型的指针存储。

3.初始化和引用

定义时可以设置初值

例: int i=5,*p=&i;      (要注意定义时候前面加上*,并且后面有地址运算符&获取i变量

意思就是在p中存放变量i的地址,此时p和i本质上一直,只是名字不同。

例:printf("%d",i);  等同于printf("%d",*p);

了解以上指针知识后,我们便能解决 利用函数交换数值的问题了

void exchange(int* x, int* y)
{
	int z = 0;
	z = *y;
	*y = *x;
	*x = z;
}
int main()
{
	int x = 0;
	int	y = 0;//int x,y;
	scanf("%d %d", &x, &y);
	exchange(&x, &y);
	printf(" %d %d\n", x, y);
	system("pause");
	return 0;
}

此时,放入“exchange”的函数中的x,y 便能与主函数中的x,y有挂钩。即使没有返回值,但完成了交换的任务。

指针就像一把锁链,把实参和形参挂钩(因为指针变量可以作为实参也可以是形参)。

4.指针变量的运算

指针的计算取决于它的基类型

假设p为指针变量,k为任意证书去,C规定,p+k的值依然表示地址,且有:

p的值+k*基类型变量所占存储单元的大小

如:1.  short *p=400,则p+2的值=400+2*2=404  

        2. float *p=400,则p+2的值=400+2*4=408

指针的用法并不止如此,还可以通过指针引用数组,字符串等,并且还有更多用法等着我们深入探究.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值