您的位置:首页 > 编程语言 > C语言/C++

C语言数据类型(10个问题)

2017-10-04 23:03 239 查看
1.什么是变量?

其值在其作用域内可以改变的量称为变量。

2.什么是变量的值,它有何特点?

变量的值是变量所对应的内存区域内存放的二进制序列,变量的值不会因为变量的类型发生了改变而改变,当变量被转换为对应类型时,内存区域的二进制序列以该类型的形式翻译出来。

3.什么是定义?

定义就是创建一个对象,为这个对象分配一块内存并给它取上一个名字。一个变量或对象在一定的区域内只能被定义一次。

4.什么是声明?

声明第一重含义:告诉编译器,这个名字已经匹配到一块内存上了。

第二重含义:告诉编译器,别的地方不能用这个名字作为变量名或对象名。

声明可以出现多次。

5.static的用法是什么?

(1)修饰局部变量,使局部变量的生命周期持续到整个程序结束。

(2)修饰全局变量,改变全局变量的作用域的范围,由原来的整个工程可见变为本源文件可见。

6.extern的用法是什么?

extern可以修饰变量和函数,表示该变量或者函数在其他地方被定义(本源文件或其他源文件内),在这里声明使用它。

7.const int *p和int * const p有什么区别?

const int *p:p所指向的空间里的值不变

int * const p:指针变量p里的值不变,p指向的地址不变,但p指向的空间里的值可变。

8.在使用寄存器变量时应注意的三点是什么?

(1)寄存器变量是单个变量,变量长度应该小于等于寄存器长度。

(2)不能对寄存器变量使用取地址符“&”,因为该变量没有内存地址。

(3)尽量在大量频繁操作时使用寄存器变量,且声明的变量个数应该尽量少。

9.volatile的作用是什么?

使编译器每次对变量进行访问时去内存里读取。

10.联合体

联合变量可被赋予任一成员值,但每次只能赋一种值,赋入新值则冲去旧值。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: