C语言再学习--关键字
如需转载请注明出处:https://blog.csdn.net/qq_29350001/article/details/53021879
C语言一共有32个关键字,如下表所示:
关键字 |
说明 |
auto |
声明自动变量 |
short |
声明短整型变量或函数 |
int |
声明整型变量或函数 |
long |
声明长整型变量或函数 |
float |
声明浮点型变量或函数 |
double |
声明双精度变量或函数 |
char |
声明字符型变量或函数 |
struct |
声明结构体变量或函数 |
union |
声明共用数据类型 |
enum |
声明枚举类型 |
typedef |
用以给数据类型取别名 |
const |
声明只读变量 |
unsigned |
声明无符号类型变量或函数 |
signed |
声明有符号类型变量或函数 |
extern |
声明变量是在其他文件正声明 |
register |
声明寄存器变量 |
static |
声明静态变量 |
volatile |
说明变量在程序执行中可被隐含地改变 |
void |
声明函数无返回值或无参数,声明无类型指针 |
if |
条件语句 |
else |
条件语句否定分支(与 if 连用) |
switch |
用于开关语句 |
case |
开关语句分支 |
for |
一种循环语句 |
do |
循环语句的循环体 |
while |
循环语句的循环条件 |
goto |
无条件跳转语句 |
continue |
结束当前循环,开始下一轮循环 |
break |
跳出当前循环 |
default |
开关语句中的“其他”分支 |
sizeof |
计算数据类型长度 |
return |
子程序返回语句(可以带参数,也可不带参数)循环条件 |
参看:C语言32个关键字详解
1数据类型关键字
A)基本数据类型(5个)
void:声明函数无返回值或无参数,声明无类型指针,显式丢弃运算结果
char:字符型类型数据,属于整型数据的一种
int:整型数据,通常为编译器指定的机器字长
float:单精度浮点型数据,属于浮点数据的一种
double:双精度浮点型数据,属于浮点数据的一种
B)类型修饰关键字(4个)
short:修饰int,短整型数据,可省略被修饰的int。
long:修饰int,长整形数据,可省略被修饰的int。
signed:修饰整型数据,有符号数据类型
unsigned:修饰整型数据,无符号数据类型
C)复杂类型关键字(5个)
struct:结构体声明
union:共用体声明
enum:枚举声明
typedef:声明类型别名
sizeof:得到特定类型或特定类型变量的大小
D)存储级别关键字(6个)
auto:指定为自动变量,由编译器自动分配及释放。通常在栈上分配
static:指定为静态变量,分配在静态变量区,修饰函数时,指定函数作用域为文件内部
register:指定为寄存器变量,建议编译器将变量存储到寄存器中使用,也可以修饰函数形参,建议编译器通过寄存器而不是堆栈传递参数
extern:指定对应变量为外部变量,即在另外的目标文件中定义,可以认为是约定由另外文件声明的对象的一个“引用“
const:与volatile合称“cv特性”,指定变量不可被当前线程/进程改变(但有可能被系统或其他线程/进程改变)
volatile:与const合称“cv特性”,指定变量的值有可能会被系统或其他进程/线程改变,强制编译器每次从内存中取得该变量的值
2流程控制关键字
A)跳转结构(4个)
return:用在函数体中,返回特定值(或者是void值,即不返回值)
continue:结束当前循环,开始下一轮循环
break:跳出当前循环或switch结构
goto:无条件跳转语句
B)分支结构(5个)
if:条件语句
else:条件语句否定分支(与if连用)
switch:开关语句(多重分支语句)
case:开关语句中的分支标记
default:开关语句中的“其他”分治,可选。
C)循环结构(3个)
for:for循环结构,for(1;2;3)4;的执行顺序为1->2->4->3->2...循环,其中2为循环条件
do:do循环结构,do 1 while(2);的执行顺序是1->2->1...循环,2为循环条件
while:while循环结构,while(1) 2;的执行顺序是1->2->1...循环,1为循环条件
以上循环语句,当循环条件表达式为真则继续循环,为假则跳出循环。
下面来详细介绍各个关键字:
(简单的就一笔带过,有必要的会另起一篇文章,详细讲述。)
基本数据类型(5个)
void
char
int
float
double
类型修饰关键字(4个)
short
long
signed
unsigned
1)在windows,32位系统中
char 1个字节
short 2个字节
int 4个字节
long 4个字节
double 8个字节
float 4个字节
2)数据类型和占位符之间的对应关系
char和unsingned char %c
short %hd
unsigned short %hu
long %ld
unsigned long %lu
int %d
unsigned int %u
float %f/%g
double %lf/%lg
%f和%lf会保留小数点后面多余的0 如 3.1400000 .2%f得 3.14
%g和%lg不会保留 如 3.14
规定整型值相互之间大小的规则:
长整型至少应该和整型一样长,而整型至少应该和短整型一样长。
扩展:C语言再学习 5--浮点数
扩展:C语言再学习 19 -- 负数
3)signed、unsigned关键字
signed char取值范围是 -2^7 到 2^7-1
unsigned char取值范围是 0 到 2^8
signed int取值范围是 -2^31 到 2^31-1
unsigned int取值范围是 0 到 2^32
留两个问题思考:
1), int i = -20;
unsigned j = 10;
i+j 的值为多少?为什么?
-10 应该是按照有符号的来计算的
2), 下面的代码有什么问题?
unsigned i ;
for (i=9;i>=0;i--)
{
printf("%u\n",i);
}
一直打印无法停止,到了0 后,变成-1。因为-1是有符号的了,再变成 4294967295一直又减下去了
4)void关键字:
参看:C语言再学习 19 -- void
复杂类型关键字(5个)
struct
union
enum
typedef
sizeof
1)struct
参看:C语言再学习 -- 关键字struct(转)
2)union、enum
参看:C语言再学习 -- 结构和其他数据形式
3)typedef
参看:C语言再学习 -- 关键字typedef
4)sizeof
参看:C语言再学习 -- sizeof与strlen
存储级别关键字(6个)
auto
static
register
extern
const
volatile
1)auto、static、register、extern
参看:C语言再学习 -- 存储类型关键字
2)const
参看:C语言再学习 -- 关键字const
3)volatile
参看:C语言再学习 -- 关键字volatile
2、流程控制关键字
A)跳转结构(4个)
return
continue
break
goto
1)return
参看:C语言再学习 -- 关键字return和exit
2)continue、break、goto
参看:C语言再学习 -- 分支与跳转语句
B)分支结构(5个)
if
else
switch
case
default
1)if、else、switch、case、default
参看:C语言再学习 -- 分支与跳转语句
C)循环结构(3个)
for
do
while
1)for、do、while
参看:C语言再学习 -- 循环语句
如需转载请注明出处:https://blog.csdn.net/qq_29350001/article/details/53021879
C语言再学习--关键字相关推荐
- C语言再学习 -- 关键字const
const 关键字其实我们并不陌生,之前有讲过const修饰数组和指针.现在来详细介绍这个关键字. 参看:[C/C++和指针]著名的<const的思考> 一.const 介绍 1.cons ...
- C语言再学习 -- 关键字typedef
参看:C语言再学习 -- 结构和其他数据形式 参看:C语言再学习 -- 关键字struct(转) 参看:常见typedef 用法 参看:关于typedef的用法总结 一.typedef 介绍 type ...
- C语言再学习 -- 关键字volatile
上周确实事情挺多的,年会.公司聚餐,一到过年就有忙不完的事分心.还好C语言再学习总结的已经差不多了,年前也不展开别的了,接下来这十几天.总结几篇典型的面试题吧. 言归正传,接下来看看关键字 volat ...
- C语言再学习 -- 关键字struct(转)
参看:C语言再学习 -- 结构和其他数据形式 参看:c语言中的关键字struct(结构体)的用法 整理总结: 结构体的一般定义形式为: 标签(tag)字段允许为成员列表提供一个名字,这样它就可以在后续 ...
- C语言再学习 -- 关键字return和exit ()函数
终于到了最后一个关键字 return 了.感觉时间过的飞快,转眼间又是一年,如果时间可以 return 就好了. 一.return 介绍 参看:C语言中return 用法 1.含义: return 表 ...
- C语言再学习 -- 关键字sizeof与strlen
sizeof 一.简单介绍 sizeof 是 C 语言的一种单目操作符,如 C 语言的其他操作符++.--等.它并不是函数.C 规定 sizeof 返回 sieze_t 类型的值.这是一个无符号整数 ...
- C语言再学习 -- 关键字void
参看:C语言关键字 void 用途: 1.对函数返回的限定,用于强调函数没有返回值.如,void func(int x); 2.对函数参数的限定,用于强调函数没有任何参数.如,int func(voi ...
- C语言再学习 -- 存储类型关键字
定义: 是对声明的实现或者实例化.连接器(linker)需要它(定义)来引用内存实体.与上面的声明相应的定义如下:参看:C语言再学习 -- 存储类.链接 C语言中有 5 个作为存储类说明符的关键字,分 ...
- C语言再学习 -- 详解C++/C 面试题 2
(经典)C语言测试:想成为嵌入式程序员应知道的0x10个基本问题. 参看:嵌入式程序员面试问题集锦 1.用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define ...
最新文章
- django学习笔记【003】创建第一个带有model的app
- Webpack vs Rollup
- Apache ZooKeeper - ZooKeeper 数据模型回顾
- Python基础教程:七种运算符
- EF Core3.0+ 通过拦截器实现读写分离与SQL日志记录
- matlab7.0编辑运行,手把手解答win10系统运行matlab7.0时提示Runtime error的操作方案
- C#多线程之Thread
- CV新赛事 | 水下鱼类物种识别
- 请求之前~HttpHandler实现媒体文件和图像文件的盗链
- 夺命雷公狗---node.js---7fs模块初步
- 应用实战:从Redis到Aerospike,我们踩了这些坑
- notepad2正则表达式替换字符串
- 向量加减法首尾规律_向量的加减法
- tomcat端口号修改
- 华为计算机视觉算法,【华为图像算法面试】计算机视觉算法岗,第一面就挂了-看准网...
- 简单的diy固态硬盘
- 基于随机森林算法的多因子选股方法分析与实现(2,代码实现)
- 【WWW 2021】【阿里小蜜】QAMaker:一站式的文档问答对抽取
- 迅闪2011安装指南
- 深圳绿道-观澜段-乡村一号_我是亲民_新浪博客