[C++]register關鍵字

#include <iostream>
/*
 register:這個關鍵字請求編譯器儘可能的將變量存在CPU內部寄存器中,而不是通過內存尋址訪問,以提高效率
 register修飾符暗示編譯程序相應的變量將被頻繁地使用,如果可能的話,應將其保存在CPU的寄存器中,以加快其存儲速度。
 register變量必須是能被CPU所接受的類型。這通常意味着register變量必須是一個單個的值,並且長度應該小於或者等於整型的長度。
 register變量可能不存放在內存中,所以不能用“&”來獲取register變量的地址。
 隨着編譯程序設計技術的進步,在決定那些變量應該被存到寄存器中時,現在的C編譯環境能比程序員做出更好的決定。
*/

using namespace std;

void mymemcpy(register char *d, register char *s,register int i )
{
while(i--)
*(s++) = *(d++);
}

int main()
{
char a[] = "Ilovecpp";
char b[10];
mymemcpy(a, b, 9);
cout << b << endl;
getchar();
return 0;
}


注:有錯誤的地方望批閱!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章