• C89:关键字


    一.C语言关键字

    1.C89关键字

    一共32个关键字

    修饰类型(8):auto-static-extern-register signed-unsigned const volatile

    基本类型(7):void short-long char-int float-double

    复合类型(4):typedef struct union enum

    计算类型(1):sizeof

    判断语句(7):if-else  switch-case -default goto-return

    循环语句(5):for do-while break-continue

    2.C99关键字

    inline restrict _Bool _Complex _Imaginary

    3.C11关键字

    _Alignas _Alignof _Atomic _Static_assert _Noreturn _Thread_local _Generic

    二.C++关键字

    1.C++98/03关键字

    一个有63个关键字

    修饰类型(8+1):auto-static-extern-register signed-unsigned const-mutable volatile

    基本类型(7+4):void short-long chart-int double-float wchar_t bool true-false

    复合类型(4):typedef enum struct-union

    计算类型(1+1):sizeof typeid

    判断语句(7):if-else goto switch-case-default return

    循环语句(5):for do-while break-continue

    异常语句(3):try-catch-throw

    对象类型(11):this-class new-delete  public-protected-private virtual-friend-inline-operator

    命名空间(6):using namespace export template  typename asm

    类型转换(5):dynamic_cast static_case const_case reinterpret_caset explicit

    2.C++11关键字

    alignas alignof char16_t char32_t constexpr decltype noexcept nullptr static_assert thread_local

    三.C和C++的区别

    C++是对C的增强,C++是强类型语言

    1.类型检查更为严格

    新增了两种新修饰类型:explicit mutable

    新增了四种新类型:wchar_t bool true-false

    新增了类型检查符:typeid

    2.增加了面向对象和运算符重载的机制

    新增了十一种新对象类型:new-delete this-class public-protected-private operator-virtual-friend-inline

    3.增加了泛型编程和标准模板库命名空间

    新增了六种新命名空间:using-export  namespace-template  typename asm

    4.增加了异常处理

    新增了三种新异常语句:try-catch-throw

    四.C和C++的兼容

    C的大部分代码都能在C++上运行,但是C++的大部分代码不能在C上运行

    1.变量声明的位置

    C中的变量声明和代码是分开的,必须在函数开始处声明

    C++中,变量可以在任意处声明,只要保证先声明再使用的原则

    2.struct结构体

    在C中声明struct变量必须写成:struct mystruct a;

    在C++中前面struct可以省略:mystruct a;

    在C++中,struct结构体支持成员函数默认访问为public(),但是在C中不行(类的默认访问为private)

    很少人会在结构体里面加类,顶多有一个构造函数

    3.bool类型

    在C++中有bool(或boolean类型),在C中没有布尔类型,只有数值类型

    4.注释不同

    在C中注释只有一种/*...*/

    在C++中的注释包含两种/*...*/和//

    5.强制数据类型转换

    在C中的强制转换形式为:(类型)变量

    在C++中还可以使用:类型(变量)

    6.赋值

    在C中的赋值只有一种=

    在C++中还可以用(),比如int x(5)等于int x=5

    7.函数

    在C中函数没有默认参数值,不允许有同名的函数,未声明和定义函数之前调用函数是允许的

    在C++中函数有参数默认值和函数重载,必须先声明原型或定义才能调用函数

    注意:在C++中赋初始值必须从参数列表的右边开始赋值,从左边开始赋值将会出错

    8.运算符&和const

    在C中运算符&表示取地址,函数不能用const

    在C++中运算符&还可以表示引用,可以用void a()const{...}

    9.extern

    在C中在其他模块共享一个全局变量不用加extern

    在C++中在其他模块共享一个全局变量必须先用extern声明

    10.void指针

    在C中void指针可以赋给任何类型的指针

    在C++中必须先进行强制数据类型转换再赋值

  • 相关阅读:
    Qt程序使用Win32 API发送ZPL指令与斑马打印机通信
    Eclipse构建Maven项目
    编码风格 缩进和空白
    Linux下Tomcat重新启动
    linux下tomcat服务的相关命令
    第一天
    Day1NLP_机器翻译
    Day4_attention is all you need 论文阅读下篇
    Day_7tensorflow 实战
    Day5_python学习
  • 原文地址:https://www.cnblogs.com/k5bg/p/11149632.html
Copyright © 2020-2023  润新知