C语言关键字
C语言是一种广泛使用的编程语言,它有许多关键字,这些关键字在C语言中具有特殊的含义和用途。在本文中,我们将介绍C语言中的一些关键字及其作用。
数据类型相关的关键字
char 字符形,占1个字节
有符号取值范围:-2^7 ~ 2^7-1 因为有符号的二进制序列中最高位为符号位
无符号取值范围:0 ~ 2^8-1
short 短整型,占2个字节
有符号取值范围:-2^15 ~ 2^15-1
无符号取值范围:0 ~ 2^16-1
int 整型,占4个字节
有符号取值范围:-2^31 ~ 2^31-1
无符号取值范围:0 ~ 2^32-1
long 长整型 在32位系统下占4个字节 在64位系统下占8个字节
float 单浮点型(实数),占4个字节
double 双浮点型(实数),占8个字节
signed 有符号(正负)的意思
在定义char 、整型(short 、int、long) 数据的时候用signed修饰,代表咱们定义的
数据是有符号的,可以保存正数,也可以保存负数
注意:默认情况下 signed 可以省略 即 int a=-10;//默认a就是有符号类型的数据
unsigned 无符号的意思
在定义char 、整型(short 、int、long) 数据的时候用unsigned修饰,代表咱们定
义的数据是无符号类型的数据
无符号类型的变量只能保存正数和0。
void 空类型的关键字
char、int 、float 都可以定义变量
void不能定义变量,没有void类型的变量
void是用来修饰函数的参数或者返回值,代表函数没有参数或没有返回值
测试数据类型所占内存的大小
sizeof()方法是一种内存容量度量函数,功能是返回一个变量或者类型的大小(以字节为单位)
#include <stdio.h>
int main()
{
printf("char :%d\n",sizeof(char));//char :1
printf("short :%d\n",sizeof(short));//short :2
printf("int :%d\n",sizeof(int ));//int :4
printf("long :%d\n",sizeof(long));//long :8
printf("float :%d\n",sizeof(float));//float :4
printf("double :%d\n",sizeof(double ));//double :8
return 0;
}
存储相关的关键字
register 意思是寄存器,
用该关键字修饰的变量是寄存器变量,在编译的时候编译器会尽量的将其存储空间分配到寄存器中。、
对于register有以下几个注意点:
1. CPU在取数据的时候在寄存器中比在内存中取数据要快
2. 不能定义寄存器数组,因为寄存器比较宝贵
3. register只能修饰字符型以及整形,不能修饰浮点型
4. 不能对寄存器变量取地址。因为只有存放在内存中的数据才有地址
static 意思是静态
可以修饰全局变量、局部变量、函数
使用static修饰的变量保存在内存的静态区空间中
const 意思是常量
用const修饰的变量是只读的,不能修改它的值
extern 外部的意思
extern 一般用于函数和全局变量的声明
控制语句相关的关键字
条件控制语句:
if 语句:if else
switch 语句: switch case default
循环控制语句:
for do while goto
其他语句控制:
break continue
其他关键字
sizeof :是返回一个变量或者类型的大小(以字节为单位)
typedef 重命名相关关键字
作用是将一个已有的关键字重新起一个名字,创造一个新的类型
typedef int INT32;
int a; 和 INT32 a;等同
volatile 易改变的意思
用volatile定义的变量,是易改变的,即告诉cpu每次用volatile变量的时候,重新去内存中取
保证用的是最新的值,而不是寄存器中的备份。