6、C语言指针、动态内存与结构体全解析

C语言指针、动态内存与结构体全解析

1. 指针解引用与星号的多重用途

在C语言里,指针解引用是个关键操作,借助在指针变量前加星号( * ),就能获取指针所指向的数据。示例如下:

printf ("numberPointer: %i \n", *numberPointer);

这里的星号并非用于声明,所以无需类型名。

星号还有通用乘法的用途,这和指针变量没关联,像下面代码:

int hoursInWeek = 24 * 7;

实际上,C语言里星号有三种不同用法,这很容易让人混淆,但只要理解了就不难掌握。为了便于学习,看到 int* number; 时,可把它想成 int POINTER number; ;看到 printf ("numberPointer: %i \n", *numberPointer); ,可当作 printf ("numberPointer: %i \n", ACTUAL_VALUE(numberPointer) ); 。不过,这只是辅助理解,实际编程别这么写。

2. 指针与const关键字

当指针和 const 修饰符一起使用时,情况和普通常量有所不同。声明为 const 的指针不能通过它改变指向的值,否则会有编译

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值