我想知道为什么寄存器整数的值是a
不被覆盖:
#include <stdio.h>
#include <conio.h>
main()
{
register int a=10;
{
register int a=30;
}
printf("%d",a);
getch();
}
为什么不是 a
的值被覆盖?输出显示 10
.
最佳答案
您在新作用域中重新声明变量。这两个 a: 是不同的。
尝试以下操作:
int main()
{
register int a=10;
{
a=30;
}
printf("%d",a);
getch();
}
关于c - C 编程中覆盖寄存器 int 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12844446/