- 相關推薦
c語言空間換時間優(yōu)化代碼的技巧方法
C語言8個實用方法代碼優(yōu)化,選擇合適的算法和數據結構,選擇一種合適的數據結構很重要,如果在一堆隨機存放的數中使用了大量的插入和刪除指令,那使用鏈表要快得多。下面是小編整理的c語言空間換時間優(yōu)化代碼的技巧方法,僅供參考,大家一起來看看吧。
比如說字符串的賦值:
方法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,則需要預存許多字符串,雖然占用了大量的內存,但是獲得了程序執(zhí)行的高效率。
如果系統(tǒng)的實時性要求很高,內存還有一些,那我推薦你使用該招數。
方法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語言空間換時間優(yōu)化代碼的技巧方法】相關文章:
c語言空間換時間優(yōu)化代碼的方法05-24
C語言高效編程之以空間換時間04-08
如何優(yōu)化C代碼03-28
C語言優(yōu)化小技巧04-13
PHP代碼優(yōu)化技巧05-29
C語言精簡代碼01-26
嵌入式C語言優(yōu)化技巧03-11
PHP調用的C代碼技巧06-27
PHP調用C代碼的方法05-09