C/C++
文章平均质量分 61
Wyethism
这个作者很懒,什么都没留下…
展开
-
AAC 编码 ADTS 头内容 Sampling Frequency Index 匹配效率分析
间隔4年之久没有写博客了,之前写的也是零零星星,现在写起来更觉得比之前无从指落键盘,写了删,删了写...,无奈之前语文学得不好。做了多年的代码界的“搬砖”劳工,轮子造了一个又一个,平时也要抽个时间回头看自己造的轮子、修一修、补一补,有一段时间没整理自己写的代码了,今天看到之前写的 AAC 编码器有一段代码用 for 循环来匹配采率频率的索引值,感觉特不自然,效率这么底,必须得优化,下面开始一阵捣鼓。一、匹配实现起初想用 C++ map 来实现,又觉得跟纯C代码不和谐,决定还用C...原创 2021-07-16 20:23:32 · 362 阅读 · 0 评论 -
const的作用
const是C语言的一个关键字,它限定一个变量不允许被改变。使用const在一定程度上可以提高程序的健壮性和减少内存占用。此外,在别人查看代码的时候,能够清晰理解const所起的作用,给对方理解程序有一些帮助。const最常用的是用来定义常量和常量指针,最近在网上搜了很多关于const的帖子,众说纷纭,越看越迷,我也辩别不出来那家说得对,那家说的错,于是针对使用const关键字来定义常量和常量指针原创 2014-03-26 12:55:07 · 526 阅读 · 1 评论 -
volatile的作用
用volatile修饰的变量是说此变量可能会被意想不到地改变,这样编译器就不会去假设这个变量的值了。确切地说,优化器在用到这个变量时必须每次都重新去读取这个变量的值,而不是使用保存在寄存器里的备份。举三个例用到volatile变量的例子,这个经常会笔试或面试到:1. 并行设备的硬件寄存器(如:状态寄存器)。2. 中断服务子程序中会访问到的非自动变量(Non-automatic variab原创 2014-03-26 09:28:57 · 746 阅读 · 0 评论 -
易混淆的概念--重写、重载、重用、重构
重写:一般在面向对象编程语言中重写指的是方法重写,方法重写又称方法覆盖,就是子类可继承父类中的方法,而不需要重新编写相同的方法。但有时子类并不想原封不动地继承父类的方法,厕是想作一定的修改,这就需要对方法进行重写。若子类中的方法与父类中的某一方法具有相同的方法名、返回类型和参数,则新方法将覆盖原有的方法。重载:在面向对象编程中分为方法重载和运算符重载。方法重载是让类以统一的方式处理不同类型数据原创 2014-03-27 13:37:12 · 3301 阅读 · 0 评论 -
大端模式与小端模式
大端模式:所谓的大端模式,是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中;所谓的小端模式,是指数据的低位保存在内存的低地址中,而数据的高位保存在内存的高地址中。为什么会有大小端模式之分呢?这是因为在计算机系统中,我们是以字节为单位的,每个地址单元都对应着一个字节,一个字节为8bit。但是在C语言中除了8bit的char之外,还有16bit的short型,32bit的lo原创 2014-06-12 15:09:39 · 535 阅读 · 0 评论