天天看點

C++之register關鍵字

register關鍵字作用是請求編譯器讓變量a直接放在寄存器裡面,運算速度更快

在c語言中 register修飾的變量 不能取位址,但是在c++裡面做了擴充

1、register關鍵字的變化:

C語言中無法取得register變量位址

在C++中依然支援register關鍵字

C++編譯器有自己的優化方式,不使用register也可能做優化

C++中可以取得register變量的位址

2、C++編譯器發現程式中需要取register變量的位址時,register對變量的聲明變得無效。

3、早期C語言編譯器不會對代碼進行優化,是以register變量是一個很好的補充。

//register關鍵字使用方法:
int main()
{
    register int a = 0; 
    printf("&a = %x\n", &a);

    system("pause");
    return 0;
}