关键字又称为保留字,就是已被C语言本身使用,不能作其它用途使用的字。例如关键字不能用作变量名、函数名等标识符。由ISO标准定义的C语言关键字共32个:auto、double、int、struct、break、else、long、switch、case、enum、register、typedef、char、extern、return、union、const、float、short、unsigned、continue、for、signed、void、default、goto、sizeof、volatile、do、if、while、static、inline、restrict _Bool _Complex _Imaginary _Generic。
一、基本数据类型
    void:声明函数无返回值或无参数,声明无类型指针,显示丢弃运算结果。(C89标准新增)
    char:字符型类型数据,属于整型数据的一种。(K&R时期引入)
    int:整型数据,表示范围通常为编译器指定的内存字节长。(K&R时期引入)
    float:单精度浮点型数据,属于浮点数据的一种。(K&R时期引入)
    double:双精度浮点型数据,属于浮点数据的一种。(K&R时期引入)
    _Bool:布尔型(C99标准新增)
    _Complex:复数的基本类型(C99标准新增)
    _Imaginary:虚数,与复数基本类型相似,没有实部的纯虚数(C99标准新增)
    _Generic:提供重载的接口入口(C11标准新增)
二、类型修饰关键字
    short:修饰int,短整型数据,可省略被修饰的int。(K&R时期引入)
    long:修饰int,长整型数据,可省略被修饰的int。(K&R时期引入)
    long long:修饰int,超长整型数据,可省略被修饰的int。(C99标准新增)
    signed:修饰整型数据,有符号数据类型。(C89标准新增)
    unsigned:修饰整型数据,无符号数据类型。(K&R时期引入)
    restrict:用于限定和约束指针,并表明指针是访问一个数据对象的唯一且初始的方式。(C99标准新增)
三、复杂类型关键字
    struct:结构体声明。(K&R时期引入)
    union:联合体声明。(K&R时期引入)
    enum:枚举声明。(C89标准新增)
    typedef:声明类型别名。(K&R时期引入)
    sizeof:得到特定类型或特定类型变量的大小。(K&R时期引入)
    inline:内联函数用于取代宏定义,会在任何调用它的地方展开。(C99标准新增)
四、存储级别关键字
    auto:指定为自动变量,由编译器自动分配及释放。通常在栈上分配。与static相反。当变量未指定时默认为auto。(K&R时期引入)
    static:指定为静态变量,分配在静态变量区,修饰函数时,指定函数作用域为文件内部。(K&R时期引入)
    register:指定为寄存器变量,建议编译器将变量存储到寄存器中使用,也可以修饰函数形参,建议编译器通过寄存器而不是堆栈传递参数。(K&R时期引入)
    extern:指定对应变量为外部变量,即标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。(K&R时期引入)
    const:指定变量不可被当前线程改变(但有可能被系统或其他线程改变)。(C89标准新增)
    volatile:指定变量的值有可能会被系统或其他线程改变,强制编译器每次从内存中取得该变量的值,阻止编译器把该变量优化成寄存器变量。(C89标准新增)
五、跳转结构
    return:用在函数体中,返回特定值(如果是void类型,则不返回函数值)。(K&R时期引入)
    continue:结束当前循环,开始下一轮循环。(K&R时期引入)
    break:跳出当前循环或switch结构。(K&R时期引入)
    goto:无条件跳转语句。(K&R时期引入)
六、分支结构
    if:条件语句,后面不需要放分号。(K&R时期引入)
    else:条件语句否定分支(与if连用)。(K&R时期引入)
    switch:开关语句(多重分支语句)。(K&R时期引入)
    case:开关语句中的分支标记,与switch连用。(K&R时期引入)
    default:开关语句中的“其他”分支,可选。(K&R时期引入)
七、编译
   #define 预编译宏
    #if 表达式 #else if 表达式 #else #endif 条件编译
    #ifdef 宏 #else #endif 条件编译
    #ifndef 宏 #else #endif 条件编译与条件编译

C/C++语言简介之关键字的更多相关文章

  1. JavaScript学习01 语言简介、基本使用和变量声明

    JavaScript语言简介.基本使用和变量声明 JavaScript是网景(Netscape)公司开发的一种基于客户端浏览器.面向对象.事件驱动式的网页脚本语言. JavaScript的前身叫Liv ...

  2. 计算机程序和C++语言简介

    C++程序设计 第一章 计算机程序和C++语言简介 1.计算机是一台能够存储并处理数据的电子设备,包含硬件和软件两部分. 2.计算机硬件由: 1)中央处理单元(Central Processing U ...

  3. GO 语言简介(网摘)

    GO 语言简介 原文出处:[陈皓 coolshell] Hello World 文件名 HELLO.GO package main //声明本文件的package名 import "fmt& ...

  4. Go 语言简介(下)— 特性

    希望你看到这篇文章的时候还是在公交车和地铁上正在上下班的时间,我希望我的这篇文章可以让你利用这段时间了解一门语言.当然,希望你不会因为看我的文章而错过站.呵呵. 如果你还不了解Go语言的语法,还请你移 ...

  5. WQL语言简介和WQL测试工具wbemtest.exe使用方法详细介绍

    这篇文章主要介绍了WQL语言简介和WQL测试工具wbemtest.exe使用方法详细介绍,WQL是指Windows管理规范查询语言,需要的朋友可以参考下 WQL就是WMI中的查询语言,WQL的全称是W ...

  6. 01. Go 语言简介

    Go语言简介 引用原文地址:http://m.biancheng.net/golang/ Go语言也称 Golang,兼具效率.性能.安全.健壮等特性.这套Go语言教程(Golang教程)通俗易懂,深 ...

  7. 学习笔记:oracle学习三:SQL语言基础之sql语言简介、用户模式

    目录 1.sql语言简介 1.1 sql语言特点 1.2 sql语言分类 1.3 sql语言的编写规则 2.用户模式 2.1 模式与模式对象 2.2 实例模式scott 本系列是作为学习笔记,用于记录 ...

  8. D语言简介

    D语言,一种通用计算机程序语言,威力强大.功能丰富,支持多种编程范式,例如面向对象.[1]  D语言最初由Digital Mars公司就职的Walter Bright于2001年发布,意图改进C++语 ...

  9. Java语言简介、基础组成、封装、继承、多态、抽象类、内部类、接口

    目录 Java简介 Java语言基础组成 面向对象 对象 封装 构造函数 this关键字 static(静态关键字) 主函数 静态什么时候用呢? 面向对象(数组工具对象建立) 设计模式 继承 成员变量 ...

随机推荐

  1. 记录linux tty的一次软锁排查2

    在复现tty的死锁问题的时候,文洋兄使用了如下的方式: #include <fcntl.h> #include <unistd.h> #include <stdio.h& ...

  2. 如何导入css和js?

    导入css <link rel="stylesheet" href="css路径" type="text/css"> 导入js, ...

  3. 浏览器http的缓存机制

    原文出处-----分享从伯乐在线看到的一篇好文章  http://web.jobbole.com/85509/ 针对浏览器的http缓存的分析也算是老生常谈了,每隔一段时间就会冒出一篇不错的文章,其原 ...

  4. 本地计算机上的OracleOraDb10g_home1TNSListener服务启动后又停止了..........解决办法

    方法1.直接修改 listener.ora 我机器上的路径是: D:/Oracle/product/10.2.0/db_1/NETWORK/ADMIN/listener.ora 修改其中的 HOST ...

  5. Linux指令--ps

    Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的那些进程.ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信 ...

  6. Linux指令--ln

    ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接.当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在 ...

  7. thinkphp5学习(一)——thinkphp5的目录结构与开发规范

    开发规范: 目录和文件 目录使用小写+下划线: 类库.函数文件统一以.php为后缀: 类的文件名均以命名空间定义,并且命名空间的路径和类库文件所在路径一致: 类文件采用驼峰法命名(首字母大写),其它文 ...

  8. Css3中的 calc()使用

    http://www.w3cplus.com/css3/how-to-use-css3-calc-function.html

  9. 【Java】泛型学习笔记

    参考书籍 <Java核心技术:卷1> 泛型, 先睹为快 先通过一个简单的例子说明下Java中泛型的用法: 泛型的基本形式类似于模板, 通过一个类型参数T, 你可以"私人定制&qu ...

  10. 《NET 设计规范》第 2 章 框架设计基础

    <NET 设计规范>第 2 章 框架设计基础 要设计功能强大又易于使用的框架. 要理解广大开发人员并有针对性地为他们设计框架. 要理解各种编程语言,并为他们设计框架. 2.1 渐进框架 2 ...