单选题
1、第124题 (1.0分) 题号:141 为了提高程序的运行速度,在函数中对于整型或指针可以使用()型的变量。
A
auto
B
register
C
static
D
extern
答案解析
正确答案:B
解析:
**解析:**
本题考查的是 C/C++ 语言中变量存储类别的关键字及其对程序性能的影响。
1. **分析选项含义**:
* **A. auto**:这是局部变量的默认存储类型。变量存储在栈(Stack)中,每次进入函数时分配空间,退出时释放。虽然使用频繁,但并没有特殊的加速机制。
* **B. register**:请求编译器将变量存储在 CPU 的**寄存器**(Register)中,而不是内存中。由于 CPU 访问寄存器的速度远快于访问内存(RAM),因此对于需要频繁访问的变量(如循环计数器、频繁使用的整型或指针),使用 `register` 修饰可以提高程序的运行速度。
* *注意*:`register` 只是一个建议,编译器可能会忽略它(例如当寄存器不足或变量地址被获取时)。此外,`register` 变量不能取地址(不能使用 `&` 运算符)。
* **C. static**:静态局部变量。变量存储在静态数据区,生命周期贯穿整个程序运行期间,但作用域仍局限于定义它的函数内。其主要作用是保持变量值的持久性,而非提高访问速度。
* **D. extern**:用于声明全局变量或函数,表明该变量或函数在其他文件中定义。它主要用于多文件编程中的链接,与提高单个函数内部的运行速度无直接关系。
2. **结论**:
题目明确指出目的是“为了提高程序的运行速度”,且针对的是“整型或指针”这类适合放入寄存器的数据类型。因此,最合适的选择是使用 `register` 关键字,试图让变量驻留在高速的 CPU 寄存器中。
故正确答案为 **B**。
题目纠错
c语言选择判断题库
相关题目
单选题
1、第135题 (1.0分) 题号:499 以下常量中,能够代表逻辑”真”值的常量是()。
单选题
1、第134题 (1.0分) 题号:143 C语言中以下几种运算符的优先次序()的排列是正确的。
单选题
1、第133题 (1.0分) 题号:170 关于return语句,下列正确的说法是()。
单选题
1、第132题 (1.0分) 题号:128若int类型数据占两个字节,则下列语句的输出为()。int k=-1; printf(”%d,%u\n”,k,k);
单选题
1、第131题 (1.0分) 题号:705 若有语句int *point,a=4;和 point=&a;下面均代表地址的一组选项是()。
单选题
1、第130题 (1.0分) 题号:167 下列语句中,不正确的是()。
单选题
1、第129题 (1.0分) 题号:651 以下定义语句中,错误的是()。
单选题
1、第128题 (1.0分) 题号:125 下列程序的输出结果是()。
单选题
1、第127题 (1.0分) 题号:639 以下能正确定义数组并正确赋初值的语句是()。
单选题
1、第126题 (1.0分) 题号:689 以下叙述中不正确的是()。
