-
第一招:以空间换时间
计算机程序中最大的矛盾是空间和时间的矛盾,那么,从这个角度出发逆向思维来考虑程序的效率问题,我们就有了解决问题的第1招--以空间换时间。比如说字符串的赋值:...
-
一、概念理解
PWM输入捕获模式是输入捕获模式的特例,自己理解如下
1. 每个定时器有四个输入捕获通道IC1、IC2、IC3、IC4。且IC1 IC2一组,IC3 IC4一组。...
-
AVR32怎么建立AP7linux开发环境?
下面我们以使用的ubuntu6.06来给大家做一下介绍,希望能起到抛砖引玉的作用。首先,使用ubuntu可以直接安装,...
-
目前单片机有多种C编译器,不同编译器之间有很多区别。总结后,主要有以下几点,需要弄清楚:
1.寄存器的定义
不少编译器已经自带了寄存器的定义文件,比如AT89S52, 使用KE...
-
今天调试时遇到了这个问题,以前都不注意这些警告错误,现在看来争取要做到:0错误,0警告。
中断中和中断外都调用了同一个串口打印函数,一直有上述的报警,没在意,今天调试时发现串口打...
-
今天调试时遇到了这个问题,以前都不注意这些警告错误,现在看来争取要做到:0错误,0警告。
中断中和中断外都调用了同一个串口打印函数,一直有上述的报警,没在意,今天调试时发现串口打...
-
本文讲述了将ANSIC程序移植到KeilC51上应该注意的事项。文章讲述了存储类型、指针类型、重入函数、根据目标系统RAM的分布的段定位和仿真栈设置、函数指针、NULL指针问题、字...
-
大家知道使用KEIL FOR ARM可以通过两种编译器来进行编译,一种就是比较古老的CARM,另一种就是现在KEIL力推的REALVIEW MDK,现在的版本可能已经到了3.5左右...
-
在C/C++中经常需要进行存储器的操作,关于数据如何在存储器中存储的问题也是非常重要的,如何在保证数据量(信息量)的同时又保证数据的存储量最小,乍一听感觉没什么好讨论的。但是作为学...
-
堆栈是计算机程序中非常重要的一部分,主要用来参数的调用,局部变量的存储等,在C语言中的函数调用过程中通过不同函数的堆栈空间可以非常方便的找到传递进来的参数以及退出时应该返回的地址。...
-
最近的一系列的公司笔试,也来不及总结一下,虽然都是一些小公司但是还是有很多值得总结的内容。很多的内容都是自己没有认真看书导致的,主要的问题就是格式控制、转义字符串等问题,说实在的都...
-
现象:
芯片驱动正常,功能应用单独实现也没有任何问题。但是将其移植到主程序中出现了时钟显示停止、触屏失效、参数显示出现问题的现象。原因:
在芯片驱动程序的开发中,...
-
在C++中复制控制是一个比较重要的话题,主要包括复制构造函数、重载赋值操作符、析构函数这三部分,这三个函数是一致的,如果需要手动定义了其中了一个,那么另外的两个也需要定义,通常在存...
-
C++中函数的参数相比C语言中的函数参数要复杂的多,其中主要的原因是C++中引入了引用以及const限定符。这两个对象的引入,使得C++中的函数参数变得异常的复杂多变,每一种类型都...
-
下面是一些比较重要的算法,原文罗列了32个,但我觉得有很多是数论里的或是比较生僻的,和计算机的不相干,所以没有选取。下面的这些,有的我们经常在用,有的基本不用。有的很常见,有的很偏...
-
选择一个正确的名字是编程中最重要的事。以前向大家推荐过两篇文章《编程命名中的7+1个提示》 和《编程中的命名设计那点事》,今天再向大家推荐一篇。一个正确的命名可以让你更容...
-
说到电路中的仿真模拟软件,saber是使用面最广也是最为专业的软件之一。虽然使用saber的人群庞大,但并不意味着其他仿真软件的仿真能力不足,simulink仿真也是非常专业的一种...
来自
仿真|by
银火虫 |发表时间 2016-05-31
|0个回复
-
代码的坏味道:
1、重复代码;
2、过长函数;
3、过大的类(C中可说过大的结构体);
4、过长参数列表;
5、发散式变化;
6、依恋情结;
7、霰弹式修改;
8、...
-
不知不觉已经出来工作一年,经过一年的工作,使我学了不少东西,从而使我认识到以前很多不足之处,也想把自己的程序调试经验跟大家分享下。
首先是软件的编写环境,选择一个编译平台对于...
-
1 单片机C51编程规范- 前言 为了提高源程序的质量和可维护性,从而最终提高软件产品生产力,特编写此规范。
...