C语言
chungle2011
这个作者很懒,什么都没留下…
展开
-
C++类的大小——sizeof(class)
http://www.360doc.com/content/18/0704/10/13956942_767592019.shtml转载 2021-03-07 21:19:15 · 231 阅读 · 0 评论 -
关于typedef在类中的作用域,继承及重载
http://www.360doc.com/content/17/0216/17/39994703_629493909.shtml转载 2020-02-22 11:43:01 · 302 阅读 · 0 评论 -
基于C语言的状态机实现技术
一、简介有限状态机是一种用来进行对象行为建模的工具,其作用主要是描述对象在它的生命周期内所经历的状态序列,以及如何响应来自外界的各种事件。有限状态机(Finite State Machine或者Finite State Automata)是软件领域中一种重要的工具,很多东西的模型实际上就是有限状态机。有限状态机(FSM)可以用作程序的控制结构。FSM对于那些基于输入的在几个不同的可选动作中转载 2016-05-12 14:54:30 · 2726 阅读 · 0 评论 -
MSB与LSB
Most Significant Bit, Last(Least) Significant Bit最高有效位(MSB) 指二进制中最高值的比特。在16比特的数字音频中,其第1个比特便对16bit的字的数值有最大的影响。例如,在十进制的15,389这一数字中,相当于万数那1行(1)的数字便对数值的影响最大。比较与之相反的“最低有效位”(LSB)。MSB高位前导,LSB低位前导。转载 2015-11-19 15:13:08 · 2065 阅读 · 0 评论 -
C语言宏定义技巧(常用宏定义)
http://blog.163.com/xuwenqiang_1989/blog/static/49074935201132433318770/宏定义 宏定义是C提供的三种预处理功能的其中一种,这三种预处理包括:宏定义、文件包含、条件编译 编辑本段1.不带参数的宏定义: 宏定义又称为宏代换、宏替换,简称“宏”。 格式: #defi转载 2015-03-03 15:16:44 · 755 阅读 · 0 评论 -
C语言学:__stdcall、__cdcel和__fastcall三者的区别
http://blog.sina.com.cn/s/blog_701526f40100lcy6.html__stdcall、__cdecl和__fastcall是三种函数调用协议,函数调用协议会影响函数参数的入栈方式、栈内数据的清除方式、编译器函数名的修饰规则等。如下图所示,可以在IDE环境中设定所有函数默认的调用协议,还可以在函数定义时单独设定本函数的调用协议。转载 2015-03-02 11:26:53 · 1542 阅读 · 0 评论 -
函数调用约定 __cdecl __fastcall __stdcall
(转)http://www.yuanma.org/data/2009/1126/article_4035.htmC/C++函数调用约定与函数名称修饰规则探讨使用C/C++语言开发软件的程序员经常碰到这样的问题:有时候是程序编译没有 问题,但是链接的时候总是报告函数不存在(经典的LNK 2001错误),有时候是程序编译和链接都没有错误,但是只要调用库中的函数就会出现堆栈异常。这些现象转载 2015-03-02 13:19:47 · 564 阅读 · 0 评论 -
KEIL里 Volatile的用法(转)
http://blog.csdn.net/djimon/article/details/7804951volatile用于防止相关变量被优化。例如对外部寄存器的读写。对有些外部设备的寄存器来说,读写操作可能都会引发一定硬件操作,但是如果不加volatile,编译器会把这些寄存器作为普通变量处理,例如连续多次的对同一地址写入,会被优化为只有最后一次的写入。实际上,网卡的数据发转载 2015-02-11 14:28:02 · 987 阅读 · 0 评论 -
乱序执行和内存屏障
最近写的一些关于在驱动程序开发中会遇到的关于乱序执行问题的短文,都是些通用的技术,贴上来share。另外,禁止转载。ps:这玩意原本是用Docbook写得,转过来还真是麻烦~~处理器的乱序和并发执行目前的高级处理器,为了提高内部逻辑元件的利用率以提高运行速度,通常会采用多指令发射、乱序执行等各种措施。现在普遍使用的一些超标量处理器通常能够在一个指令周期内并发执行多条指令转载 2012-09-07 14:59:46 · 813 阅读 · 0 评论 -
C/C++ source code websites
代码 It’s well known that C/C++ languages are the most dominant programming languages around. As I mentioned in the previous post "Top 10 best applications written in C/C++" thatmost of the big soft转载 2015-02-12 15:29:51 · 814 阅读 · 0 评论 -
Hex、bin、axf、elf格式文件小结
http://blog.csdn.net/grow_mature/article/details/8553542一、HEXHex文件,一般是指Intel标准的十六进制文件。Intelhex 文件常用来保存单片机或其他处理器的目标程序代码。它保存物理程序存储区中的目标代码映象。一般编程器均支持生成此种格式文件。如,KEIL下可通过配置相关选项来生成HEX目标文件。转载 2014-12-10 14:19:07 · 571 阅读 · 0 评论 -
c51单片机c语言教程
c51单片机c语言教程转载 2014-12-10 16:46:19 · 1462 阅读 · 0 评论 -
不可重入函数和可重入函数 线程安全性
不可重入函数和可重入函数可重入函数转载 2014-12-08 13:57:25 · 611 阅读 · 0 评论 -
Volatile的陷阱
最近写的关于在嵌入式开发中常遇到的关于volatile关键字使用的短文,都是些通用的技术,贴上来share。另外,禁止转载。 对于volatile关键字,大部分的C语言教材都是一笔带过,并没有做太过深入的分析,所以这里简单整理了一些关于volatile的使用注意事项。实际上从语法上来看volatile和const是一样的,但是如果const用错,几乎不会有什么问题;而volatile用转载 2012-09-07 14:55:40 · 641 阅读 · 0 评论 -
C99的新特性(1)
C99出来很久了,好像现在还在谈论一个10多年前的标准显得有点过时。不过现实是:关于C99新增的特性,许多用C用了N年的人其实还都不清楚。而在一些能找到的相关文章里面,基本上都是一些对标准的简单翻译,看那种玩意还不如直接去翻标准。所以我主要从自己的使用体验的角度来分享一下我用C99的一些心得。这篇文章并非要做个大而全的C99相对C89的扩展列表,我只挑我自己觉得可能用上或者有必要说的来讨论转载 2012-09-07 15:03:20 · 1805 阅读 · 0 评论 -
99的新特性(2)
发现写连载有个坏处:就是俺的水平还没有到能一次写好的地步~~所以有了新想法以后还得回头去改之前写的东西。因此如果你不是很急着看的话,最好等到俺完成整篇文章以后再看。昨晚写到后面已经很困了,所以越写越少。今天回头在(1)的inline部份补了一些东西。下面继续讨论C99的扩展。混合声明(mix declarations and code)其实也就是解除了原先必须在block的转载 2012-09-07 15:05:13 · 1831 阅读 · 0 评论 -
C99的新特性(3)
发现最后这部分的内容花费的时间要比我想像的多。本来以为留到最后说的都是一些比较少用的东西,简单带带也就罢了。结果设计和分析restrict的实验就搞了我快一个晚上~~复合常量(Compound Literals)简单来说复合常量就是允许你定义一个匿名的结构体或数组变量。如:const int *p_array = (const int []) {1, 2};这样转载 2012-09-07 15:06:32 · 1818 阅读 · 0 评论