标准C学习day09 变量和作用域 指针

指针变量也是变量
指针变量只能记录地址数据
指针变量和普通变量的使用方法完全不同
指针变量的主要作用就是用来找一个普通
变量的
只有记录了有效地址的指针才能用来找
普通变量(指针变量的使用有前提
条件)
指针变量也需要先声明然后才能使用
声明指针变量时需要在变量名称前加*
当一个指针记录了某个存储区的地址以后
就可以说这个指针指向这个存储区
当一个指针指向一个存储区以后就可以在
指针前使用*操作符,这种写法就可以
表示指针指向的那个存储区

通过指针找到的那个存储区的类型只能是
声明指针时所提供的类型
int *p_val;
… (让指针指向某个存储区)
*p_val(这个存储区的类型只能是整数类型)

可以在一条语句里声明多个同类型指针,
这个时候需要在每个指针变量前
单独加*

typedef关键字可以用来给数据类型起别名,
程序里可以用别名代替原来的类型名称
指针类型通常可以起别名
用指针类型别名声明指针变量的时候就不
需要再加*了

没有记录有效地址的指针分为两类
1.空指针里固定记录空地址(NULL),
这个地址的数值就是数字0
2.其他没有记录有效地址的指针都
叫做野指针

程序里不可以出现野指针
所有指针变量必须初始化

指针初始化的时候*没有参与赋值过程

指针指向的存储区可以随着程序的执行
不断变化
这个时候可以把指针看做是存储区的某种
身份或特征

当一个指针指向数组里第一个存储区之后
可以通过这个指针找到数组里的每个
存储区
这个时候可以使用指针代表整个数组

地址数据只能参与以下计算过程
地址 + 整数 地址 - 整数 地址 - 地址
地址加减整数n实际加减的是n个指向
存储区的大小
int arr[5];
0 1 2 3 4


^ ^

  •     *
    
  •     *
    

arr arr + 2

数组里第一个存储区的地址加下标可以
得到下标对应存储区的地址

以下两种写法可以用来表示数组里的存储区
*(arr + num) 或 *(p_val + num)
其中arr是数组名称,p_val是指向
数组里第一个存储区的指针,num是下标

地址之间做减法结果是一个整数,这个整数
表示两个地址之间包含的指向存储区
的个数

int arr[5];
0 1 2 3 4


^ ^

  •     *
    
  •     *
    

arr &arr[2]

&arr[2] - arr结果是2

可以使用指针作为循环变量依次处理数组
里的每个存储区
在循环里指针应该依次指向数组里的每个
存储区

声明指针变量的时候可以使用const关键字

如果在声明指针变量的时候把const关键字
写在类型名称前就表示不可以通过这个
指针对它指向的存储区做赋值,但是可以
对指针本身做赋值.

如果在声明指针变量的时候把const关键字
写在指针变量名称前就表示可以通过
这个指针对它指向的存储区做赋值,但是
不可以对指针本身做赋值

声明指针变量时可以使用void作为类型名称
可以把这种指针叫做无类型指针
这种指针没有告诉我们它指向的存储区
是什么类型的
不应该在这种指针前使用*操作符或者
对这种指针进行加减整数的计算
这种指针使用前需要先强制类型转换成
有类型指针

可以在调用函数和被调用函数之间传递
存储区(一个函数把自己的存储区
给别的函数使用)
只要把存储区的地址传递给别的函数就
可以实现传递存储区的效果
只能使用指针记录别的函数传递过来的地址

数组做形式参数的时候真正的形式参数其实
是一个指针,它指向数组里第一个存储区

声明指针形式参数的时候尽量使用const
关键字

无类型指针经常作为形式参数使用
可以通过无类型指针形式参数把任意
类型的存储区传递给被调用函数

可以在被调用函数里把存储区的地址当
返回值,这样就可以从被调用函数
向调用函数传递存储区

只有符合生命周期规则的存储区才可以
在函数之间传递(不可以把非静态
局部变量存储区的地址做返回值使用)

以下是对提供的参考资料的总结,按照要求结构化多个要点分条输出: 4G/5G无线网络优化与网规案例分析: NSA站点下终端掉4G问题:部分用户反馈NSA终端频繁掉4G,主要因终端主动发起SCGfail导致。分析显示,在信号较好的环境下,终端可能因节能、过热保护等原因主动释放连接。解决方案建议终端侧进行分析处理,尝试关闭节电开关等。 RSSI算法识别天馈遮挡:通过计算RSSI平均值及差值识别天馈遮挡,差值大于3dB则认定有遮挡。不同设备分组规则不同,如64T和32T。此方法可有效帮助现场人员识别因环境变化引起的网络问题。 5G 160M组网小区CA不生效:某5G站点开启100M+60M CA功能后,测试发现UE无法正常使用CA功能。问题原因在于CA频点集标识配置错误,修正后测试正常。 5G网络优化与策略: CCE映射方式优化:针对诺基亚站点覆盖农村区域,通过优化CCE资源映射方式(交织、非交织),提升RRC连接建立成功率和无线接通率。非交织方式相比交织方式有显著提升。 5G AAU两扇区组网:与三扇区组网相比,AAU两扇区组网在RSRP、SINR、下载速率和上传速率上表现不同,需根据具体场景选择适合的组网方式。 5G语音解决方案:包括沿用4G语音解决方案、EPS Fallback方案和VoNR方案。不同方案适用于不同的5G组网策略,如NSA和SA,并影响语音连续性和网络覆盖。 4G网络优化与资源利用: 4G室分设备利旧:面对4G网络投资压减与资源需求矛盾,提出利旧多维度调优策略,包括资源整合、统筹调配既有资源,以满足新增需求和提质增效。 宏站RRU设备1托N射灯:针对5G深度覆盖需求,研究使用宏站AAU结合1托N射灯方案,快速便捷地开通5G站点,提升深度覆盖能力。 基站与流程管理: 爱立信LTE基站邻区添加流程:未提供具体内容,但通常涉及邻区规划、参数配置、测试验证等步骤,以确保基站间顺畅切换和覆盖连续性。 网络规划与策略: 新高铁跨海大桥覆盖方案试点:虽未提供详细内容,但可推测涉及高铁跨海大桥区域的4G/5G网络覆盖规划,需考虑信号穿透、移动性管理、网络容量等因素。 总结: 提供的参考资料涵盖了4G/5G无线网络优化、网规案例分析、网络优化策略、资源利用、基站管理等多个方面。 通过具体案例分析,展示了无线网络优化中的常见问题及解决方案,如NSA终端掉4G、RSSI识别天馈遮挡、CA不生效等。 强调了5G网络优化与策略的重要性,包括CCE映射方式优化、5G语音解决方案、AAU扇区组网选择等。 提出了4G网络优化与资源利用的策略,如室分设备利旧、宏站RRU设备1托N射灯等。 基站与流程管理方面,提到了爱立信LTE基站邻区添加流程,但未给出具体细节。 新高铁跨海大桥覆盖方案试点展示了特殊场景下的网络规划需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值