- 相关推荐
c语言空间换时间优化代码的技巧方法
C语言8个实用方法代码优化,选择合适的算法和数据结构,选择一种合适的数据结构很重要,如果在一堆随机存放的数中使用了大量的插入和删除指令,那使用链表要快得多。下面是小编整理的c语言空间换时间优化代码的技巧方法,仅供参考,大家一起来看看吧。
比如说字符串的赋值:
方法A:通常的办法
#define LEN 32
char string1 [LEN];
memset (string1,0,LEN);
strcpy (string1,"This is a example!!");
方法B:
const char string2[LEN] ="This is a example!";
char * cp;
cp = string2 ;
使用的时候可以直接用指针来操作。
从上面的例子可以看出,A和B的效率是不能比的。在同样的存储空间下,B直接使用指针就可以操作了,而A需要调用两个字符函数才能完成。B的缺点在于灵活性没有A好。在需要频繁更改一个字符串内容的时候,A具有更好的灵活性;如果采用方法B,则需要预存许多字符串,虽然占用了大量的内存,但是获得了程序执行的高效率。
如果系统的实时性要求很高,内存还有一些,那我推荐你使用该招数。
方法C:
#define bwMCDR2_ADDRESS 4
#define bsMCDR2_ADDRESS 17
int BIT_MASK (int_bf)
{
return ((IU<<(bw##_bf))-1)<<(bs##_bf);
}
void SET_BITS(int_dst,int_bf,int_val)
{
_dst=((_dst) & ~ (BIT_MASK(_bf)))I
(((_val)<<<(bs##_bf))&(BIT_MASK(_bf)))
}
SET_BITS(MCDR2,MCDR2_ADDRESS,RegisterNumb
er);
【c语言空间换时间优化代码的技巧方法】相关文章:
嵌入式C语言优化技巧11-10
20条PHP代码优化技巧05-06
嵌入式C语言性能优化方法11-26
C语言头文件避免重复包含的方法技巧03-27
10个经典的C语言面试基础算法及代码12-05
C语言选择排序算法及实例代码11-25
C语言插入排序算法及实例代码12-05
C语言左右法则的技巧03-27
C语言以数据块的形式读写文件实例代码12-04