C++register寄存器变量
一般情况下,C++中的变量的值是存放在内存中的。当程序中用到哪一个变量的值时,由控制器发出指令将内存中该变量的值送到CPU中的运算器。经过运算器运算,如果需要存数,再从运算器将数据送到内存存放。
为提高执行效率,C++允许将局部变量的值放在CPU中的寄存器中,需要用时直接从寄存器取出参加运算,不必再到内存中去存取。这种变量叫做寄存器变量,用关键字register声明。
在程序中定义寄存器变量对编译系统不是强制性的,随着硬件的不断发展,当今的编译系统基本上都能够识别使用频繁的变量,自动地将这些变量放在寄存器中。
经典案例:C++实现用register做寄存器变量声明。
源码分析:
#include<iostream>//头文件
using namespace std;//命名空间
int main()//主函数
{
register int i,num;//定义寄存器变量
num=1;//给num赋初值
int temp;//定义整型变量
cout<<"请输入temp:"; //提示语句
cin>>temp;//键盘输入temp
for(i=1;i<temp;i++)//for循环
{
num=num*i;
}
cout<<num<<endl;//输出num
return 0;//函数返回值为0
}
编译后的结果:
请输入temp:4
6
--------------------------------
Process exited after 3.178 seconds with return value 0
请按任意键继续. . .
更多案例可以go公众号:C语言入门到精通
正文完