當前位置:首頁 > 芯聞號 > 充電吧
[導讀]1.12[arry]? = *(arry + 2) = arry[2]1.2下標絕不會比指針更有效率,但指針有時會比下標有效。結論:? ? 1.當根據某個決定數(shù)目的增量在一個數(shù)組中移動的時候,使用指針

1.1

2[arry]? = *(arry + 2) = arry[2]

1.2

下標絕不會比指針更有效率,但指針有時會比下標有效。

結論:

? ? 1.當根據某個決定數(shù)目的增量在一個數(shù)組中移動的時候,使用指針比使用下標產生效率更高的代碼。當這個增量是1并且機器具有地址自動增量模型時,這點表現(xiàn)更突出。

? ? 2.聲明為寄存器變量的指針通常比位于靜態(tài)內存和堆棧中的指針效率更高。

? ? 3.如果可以通過測試一些已經初始化并經過調整的內容來判斷循環(huán)是否應該終止,就不需要使用單獨的計數(shù)器。

? ? 4.那些必須在運行時求值的表達式較之諸如&arry[SIZE]或(arry + SIZE)這樣的常量表達式往往代價更高。

1.3

傳址調用是通過傳遞一個指向所需元素的指針來實現(xiàn)的,函數(shù)得到的是該指針的拷貝。

void?strcpy(?char?*bugger,?char?const?*string)
{
????while(?(*buffer++?=?*string++)?!=?'