关于c语言指针的进一步实践

今天对昨日视频教程中的代码进行了实践分析。
以下是代码:

#include <stdio.h>
int main ()
{
	char a='F';
	int b=123;
	char *pa=&a;
	int *pb=&b;
	
	printf("a=%c\n",*pa);
	printf("b=%d\n",*pb);
	
	*pa+=1;
	*pb+=1;
	
	printf("now,a=%c\n",*pa);
	printf("now,b=%d\n",*pb);
	
	printf("size of pa = %d\n",sizeof(pa));
	printf("size of pb = %d\n",sizeof(pb));
	
	printf("the addr of a is: %p\n",pa);
	printf("the addr of b is: %p\n",pb);
	
	return 0;
}

在这里插入图片描述通过程序的运行结果可以看出整型与字符型所对应指针占用的空间为8个字节,因此下方地址相差的大小为8(16位数字)。
对于指针还有以下需要注意:
星号为间接运算符(indirection operator)
”后跟一个指针名或地址时,“”给出存储在指针指向地址上的值。
EG:

nurse = 22;
ptr = &nurse;//指向nurse的指针
val = *ptr;//把ptr指向的地址上的值赋给val

执行以上三条语句的最终结果是把22赋给val。
如果有什么问题,欢迎与我交流讨论。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值