
C/C++
BeckZZ
这个作者很懒,什么都没留下…
展开
-
c语言代码的优化
<br />1、选择合适的算法和数据结构<br /> 应该熟悉算法语言,知道各种算法的优缺点,具体资料请参见相应的参考资料,有很多计算机书籍上都有介绍。将比较慢的顺序查找法用较快的二分查找或乱序查找法代替,插入排序或冒泡排序法用快速排序、合并排序或根排序代替,都可以大大提高程序执行的效率。.选择一种合适的数据结构也很重要,比如你在一堆随机存放的数中使用了大量的插入和删除指令,那使用链表要快得多。数组与指针语句具有十分紧密的关系,一般来说,指针比较灵活简洁,而数组则比较直观,容易理解。对于大部分的编译器,使转载 2011-03-30 12:39:00 · 692 阅读 · 0 评论 -
关于ARM的C语言优化
C数据类型1. C语言的程序优化与编译器和硬件系统都有关系,设置某些编译器选项是最直接最简单的优化方式。在默认的情况下,armcc是全部优化功能有效的,而GNU编译器的默认状态下优化都是关闭的。ARM C编译器中定义的char类型是8位无符号的,有别于一般流行的编译器默认的char是8位有符号的。所以循环中用char变量和条件 i ≥ 0时,就会出现死循环。为此,可以用fsigned - char(for gcc)或者-zc(for armcc)把char改成signed。 其他的变量类型如下:转载 2011-03-30 12:46:00 · 740 阅读 · 0 评论 -
嵌入式实时程序设计中C/C++代码的优化
1.Inline函数 在C++中,关键字Inline可以被加入到任何函数的声明中。这个关键字请求编译器用函数内部的代码替换所有对于指出的函数的调用。这样做在两个方面快于函数调用。这样做在两个方面快于函数调用:第一,省去了调用指令需要的执行时间;第二,省去了传递变元和传递过程需要的时间。但是使用这种方法在优化程序速度的同时,程序长度变大了,因此需要更多的ROM。使用这种优化在Inline函数频繁调用并且只包含几行代码的时候是最有效的。2.用指针代替数组 在许多种情况下,可以用指针运算代替数组索引,这样做常转载 2011-03-30 12:54:00 · 798 阅读 · 0 评论 -
关于系统调用劫持
如果一个木马要隐藏起来,不被系统管理员发现。截获系统调用似乎是必须的。大部分情况下,通过修改系统调用表来实现系统调用的劫持。下面是一个典型的截获系统调用的模块:模块一:#include #include #include #include转载 2011-08-19 09:58:56 · 927 阅读 · 0 评论 -
open和fopen的区别
open和fopen的区别:1.缓冲文件系统 缓冲文件系统的特点是:在内存开辟一个“缓冲区”,为程序中的每一个文件使用,当执行读文件的操作时,从磁盘文件将数据先读入内存“缓冲区”,装满后再从内存“缓冲区”依此读入接收的变量。执行写文件的操作时,先将数据写入内存“缓冲区”,待内存“缓冲区”装满后再写入文件。由此可以看出,内存“缓冲区”的大小,影响着实际操作外存的次数,内存“缓冲区”越大,则操转载 2012-09-25 13:24:21 · 637 阅读 · 0 评论 -
IIC通信注意事项
1、时钟一般情况下由主来控制,但是从设备接收一个字节并发送确认信号后,很可能由于忙于处理中断等其他实时处理,会强行将时钟拉低一段时间,所以主在控制时钟发送一个新的字节或发送STOP or START信号时,要检测时钟是否受控,如果不受控,就要产生错误告警,如果时钟一直被某一从设备拉低,则其他从设备访问也会出错,导致整个总线瘫痪。2、主给从发送数据时,每发送一个字节都要等待从设备的确认,即:发送转载 2012-10-31 11:50:15 · 4891 阅读 · 0 评论