-
第一招:以空间换时间
计算机程序中最大的矛盾是空间和时间的矛盾,那么,从这个角度出发逆向思维来考虑程序的效率问题,我们就有了解决问题的第1招--以空间换时间。比如说字符串的赋值:...
-
优化级别说明(仅供参考):
则其中的 Code Optimization 栏就是用来设置C51的优化级别。共有9个优化级别(书上这么写的),高优化级别中包含了前面所...
-
本文讲述了将ANSIC程序移植到KeilC51上应该注意的事项。文章讲述了存储类型、指针类型、重入函数、根据目标系统RAM的分布的段定位和仿真栈设置、函数指针、NULL指针问题、字...
-
引起我注意Keil c函数参数传递的是在一个偶然的机会,我在写一个函数的时候:如下write_byte(ulong addr, uchar dat){ &nb...
-
为了节省内存占用量,多个调用函数的参数都是指针地址,并添加了空指针判断,结果在调用PID函数后,我对输出结果进行判定是否为空,若为空则返回,代码如下:
...
-
一般情况下,源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部分内容指定编译的条件,这就是“条...
-
文章关于链表,本次主要涉及几个比较深入的问题:循环链表的判定、倒数第m个节点的数据获取、多层次链表的设计、平铺和取消平铺。
/*...
-
最近,在写程序的时候,碰到一个在自己看来非常不可思议的问题。当然,或者高手就觉得大惊少怪了,呵呵。
以下是问题相关:
平台:MEGA64;
编译环境:codeVi...
-
在C++中复制控制是一个比较重要的话题,主要包括复制构造函数、重载赋值操作符、析构函数这三部分,这三个函数是一致的,如果需要手动定义了其中了一个,那么另外的两个也需要定义,通常在存...
-
C++中函数的参数相比C语言中的函数参数要复杂的多,其中主要的原因是C++中引入了引用以及const限定符。这两个对象的引入,使得C++中的函数参数变得异常的复杂多变,每一种类型都...
-
#define abc (*(volatile unsigned long *)0xE0200280)
开始对于上面的语法不太理解,但通过拆分,我们可以看的更明...
-
单链表整表创建的算法思路:
声明一结点p和计数器变量i;
初始化一空链表L;
让L的头结点的指针指向NULL,即建立一个带头结点的单链表;
循环:
生成一新结点賦值给...
-
今天到网上查一个问题,C 专家编程里的,让我看到了差距,前人大牛啊
算法求解!如何判断一个单向链表是否有环路?
--------------------...
-
1、*p++ 或者 *(p++) 自增前表达式值是*p, 以后再自增p
2、(*p)++ 自增前表达式值是*p,以后再自增*p
3、*++p ...
-
摘要:采用MATLAB辅助DSP程序的开发和调试,能加快DSP应用程序的开发。实时数据交换(RTDX)为设计、验证DSP算法提供了一个快速、方便的解决方案。本文对RTDX的工作原理...
来自
仿真|by
银火虫 |发表时间 2016-06-12
|0个回复
-
操作系统: WinXP 32bit
仿真器: SEED-XDS560 Plus
开发环境: CCS 5.2
目标处理器: TMS320 C6727
############...
来自
仿真|by
一见钟情 |发表时间 2017-09-21
|0个回复
-
在设计结构体时,千万不要再结构体内部定义数组,
因为这会阻碍其应用,
对于如果要使用的地方,数据元素个数小于定义的数组长度,有些浪费。
对于数据元素个数大于定义的数组长度...
-
1 单片机C51编程规范- 前言 为了提高源程序的质量和可维护性,从而最终提高软件产品生产力,特编写此规范。
...
-
作为一门工具,最终的目的就是实现功能。在满足这个前提条件下,我们希望我们的程序能很容易地被别人读懂,或者能够很容易地读懂别人的...
-
mmap作为struct file_operations的重要一个元素,mmap主要是实现物理内存到虚拟内存的映射关系,这样可以实现直接访问虚拟内存,而不用使用设备相关的read、...