华为软件训练营MOOC-C语言 Week2 学习笔记

一、低级错误案例

1.1 引言

提高质量意识、成本意识,前车之鉴,后世之师,不犯同样的错误,提高编码水平,增强产品代码的可靠性,减少网上事故的发生。

1.2 修改函数形参

函数参数传递的原理:函数参数自身上用的存储单元在堆栈中分配,入口参数的值会在函数入口处拷贝到堆栈区中,一旦函数返回,其占用的堆栈空间立即被释放,因此对函数参数所在存储单元的直接修改不会作用到函数之外,但是对参数存储单元钟存放的地址指向的存储空间的修改,则会在函数之外起作用。

1.3 返回局部变量的地址

局部变量的内容存放在堆栈钟的,其所占用的空间在函数返回后就会自动释放,这导致函数返回的局部变量指针指向了内容不可预知的内存。

错误代码

struct QueryTable *QueryTableAdaptor(key){
    struct QueryTable stAdaptor[m]={
  ...};
    if (query success){
        return &(stAdaptor[n]);
    }
}

修改后

void QueryTableAdaptor(key,struct QueryTable *pData){
    struct QueryTable stAdaptor[m]={
  ...};
    if (query success){
        *pData=&(stAdaptor[n]);
    }
}

1.4 强制类型转换和字节序

1、不能轻易进行强制类型转换。

2、大端序存储方式为:高地址存低位字节,低地址存高位字节;小端序存储方式为:低地址存低位字节,高地址存高位字节。

目录:网盘文件永久链接 SDN网络助力企业数字化转型 1_传统网络有什么局限性 2.1_SDN是什么 2.2_SDN是什么 3_SDN有什么价值 4_SDN标准组织 5_SDN的应用场景 6.1_华为SDN解决方案及成功案例 6.2_华为SDN解决方案及成功案例 融以致远-带你走进大数据 1.1_大数据的产生与发展 1.2_大数据基本概念 1.3_Hadoop生态系统简介 1.4_大数据的价值与应用 1.5_大数据发展趋势 2.1_华为大数据解决方案简介 2.2_华为大数据平台架构 2.3_华为大数据商业咨询服务总体方案 2.4_大数据开发团队与社区贡献 2.5_华为大数据功能组件介绍 3.1_移动运营商应用分享 3.2_金融机构应用分享 3.3_政府机构应用分享 4.1_大数据技术学习认证指南 4.2_课程总结 数据中心-全面云化的新一代互联网基础 1_企业的“数据银行”-- 数据中心基础知识 2_数据中心的“前世今生”-- 数据中心发展简史 3.1_风中有朵“数据的云”-- 数据中心发展趋势 3.2_风中有朵“数据的云”-- 数据中心发展趋势 4.1_拨开”云雾“见天日 -- 云数据中心基本架构 4.2_拨开”云雾“见天日 -- 云数据中心基本架构 5.1_ “拥抱云,融入云”-- 华为云数据中心解决方案 6_课程总结 下一代网络安全那些事 1_什么是网络安全 2_如何保障网络边界安全 3_如何保障应用安全 4_ 安全管控及趋势分析 5_课程总结 云服务的前世今生 1_初窥云计算 2.1_且听华为解读云服务-云的来龙去脉 2.2_且听华为解读云服务-云的技术特性 2.3_且听华为解读云服务-云的价值及华为云 3.1_徐徐展开的画卷-华为公有云服务架构 3.2_徐徐展开的画卷-华为云的典型产品 3.3_徐徐展开的画卷-华为云的典型产品 3.4_徐徐展开的画卷-华为云的典型产品 4_Study是技术的升华 专家带您玩转物联网世界 1_物联网发展历程及定义 2_物联网系统架构 3_物联网通信技术 4_物联网在智慧城市中的应用 5_物联网在消费电子中的应用 6_物联网在绿色能源中的应用 7_物联网在车联网领域的应用 8_物联网在公共安全中的应用
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值