zoukankan      html  css  js  c++  java
  • 一起学 c++(三)

    最近有点忙,没时间更新,今天周末给大家补上。

    今天主要来说学最基础,入门的东西了。

    c++语言中使用的词汇有六种:标识符,关键字,运算符,分隔符,常量,注释符。

     

    我们先来看看关键字:

    关键字就是由c++语言规定的具有特定意义的字符串,用户定义的标识符不能跟关键字同名。

    1.       类型关键字

    关键字

    含义

    bool

    布尔类型

    char

    字符型

    Int long short

    整型,长整型,短整型

    Float double

    单精度浮点数,双精度浮点数

    Class struct union enum

    类,结构体,联合体,枚举类型

    Const

    常数

    Unsigned signed

    无符号,有符号

    Void

    无返回值

    Static

    静态

    extern

    外部变量

    private protected public

    私有,保护,公有

    friend

    友元

    virtual

    虚函数

    template

    模版

    namespace

    命名空间

    typedef

    类型别名

    inlin

    内联函数

    2.       语句定义符

    用于表示一个语句功能

    关键字

    含义

    sizeof

    类型大小

    new delete

    创建,释放对象

    continue

    略过本次循环,进入下一个循环

    break

    中断循环过程

    reutrn

    函数返回

    goto

    跳转

    for

    for循环结构

    throw

    抛出异常

    try

    执行一段可能抛出异常的代码

    catch

    处理抛出的异常

    do

    while形成循环结构

    while

    循环结构

    If else

    根据表达式判断执行代码

    switch

    分支语句

    default

    分支语句默认标签

    static_cast  const_cast

    dynamic_cast  reinterpret_cast

    类型转换

    false true

    布尔假,布尔真

    this

    当前对象指针

     

    3.       预处理命令字

    关键字

    含义

    ##

    连接字

    #define

    定义一个宏

    #error

    在编译过程中显示一个错误

    #if #ifdef #ifndef #else #elif #endif

    条件命令编译

    #include

    文件包含

    #line

    设置行和文件信息

    #pragma

    执行编译命令

    #undef

    取消一个未定义变量

     

     

    我们再来说下c++标识符

    在程序中使用的变量名,函数名,标号等都是标识符。

    作为标识符,有以下几个规定:

    1)         标识符只能是字母、数字、下划线组成的字符串

    2)         标识符的第一个字符不能是数字

    3)         不能用关键字作为标识符

     

    当然啦,这是基本的要求,但是一个好的标识符能起到很好理解的作用,让人一看就知道这个是什么意思,方便阅读。这里主要给大家推荐下匈牙利命名法,或者华为规范,我会在有时间的时候给大家发下googlec++规范,也是相当不错的。

     

    接下来就是c++的数据类型啦

    不同的c++数据所占用的内存空间字节数不同,运算速度也不一样。

    基本数据类型有:

    (一)   布尔型

             只能取true或者false,用一个字节存储

    (二)   字符型

             字符型用一个字节表示,字符值主要以ASCII码的形式存放在变量的内存单元中。

             char c_a;

    c_a=’A’;

    cout<<c_a<<endl;

    (三)   整型

    1)         整型

             类型为int。在我的32位机器上它的内存占4个字节

    2)         短整型

             类型为short int 或者 short,它在内存中占2个字节

    3)         长整型

             类型为long int long,在32为机器上也是占4个字节

    4)         无符号整型

             类型为unsigned int ,大小跟int一样

    5)         无符号短整型

             类型为 unsigned short

    6)         无符号长整型

             类型为 unsigned long

     

             每个类型

    (四)   浮点型

    1)         单精度浮点型:float,占4个字节

    2)         双精度浮点型:double,占8个字节

    3)         长双精度浮点型:long double,占8个字节

     

     

    我原来说过cin 一个int 型的不能太大,这是为什么呢

    因为每个数据类型都有大小,取值范围,到底是多少呢,我们来看看

    类型名

    长度(字节)

    取值

    bool

    1

    false true

    char

    1

    -128~127

    unsigned char

    1

    0~255

    short

    2

    -32768~32767

    unsigned short

    2

    0~65535

    int

    4

    -2147483648~2147483647

    unsigned int

    4

    0~4294967295

    long

    4

    -2147483648~2147483647

    unsigned long

    4

    0~4294967295

    float

    4

    +-(3.4*10-38~3.4*1038~)

    double

    8

    1.7*10-308~1.7*10308

    long double

    8

    1.7*10-308~1.7*10308

     

    数据在内存中的储存

     

    所有数据在计算机中储存时,都是以字节为基本单位的。字节是计算机储存空间的最小单位,八个二进制位构成1个字节。由于计算机的软硬件不同,同一数据类型在不同计算机上不同,我们这里就拿常用的32位机器做例子。

     

    数据占用的字节数的多少决定了其所能表达的数据范围,计算机对储存空间中存放的相同信息,因其表示的数据类型不同会有不同的解释。虽然每一个字节可分为8位,但是计算机不会为任何一种数据类型单独分解一位来储存,即使占用了一位,也得给它分配一个字节。

     

    对于整形,最高位是符号位,最高位来表示数的正负。

    对于浮点数,前8位表示指数,其中最高位为指数的符号位,后24位表示尾数,其中最高位为尾数的符号位

    对于双精度浮点型,8个字节,前11位表示指数,其中最高位为指数的符号位,后53位表示尾数,其中最高位为尾数的符号位

    对于字符型,1个字节,值和字符的对应关系由ASCII编码标准决定

    对于字符串,就是字符数组,每个字符占一个字节,结尾以“\0”结束

    对于布尔型,1个字节,最低位1为真,0为假

     

    好啦今天就先到这里吧,我们后面会说变量,常量,运算符等

    一会我会发下goole c++规范

     

    个人网站http://www.ravedonut.com/

  • 相关阅读:
    最大子序和
    Linux中判断hdfs文件是否存在
    Python判断字符串是否为字母或者数字
    win10+1060显卡安装anaconda+CUDA10.1+pytorch+cuDNN+tensorflow-gpu
    Anaconda3+python3环境下如何创建python2环境(win+Linux下适用,同一个anaconda下py2/3共存)
    教你上传本地代码到github
    vue源码学习-vnode的挂载和更新流程
    学习 vue 源码 -- 响应式原理
    instanceof 操作符实现原理解析
    webapp开发要点记录
  • 原文地址:https://www.cnblogs.com/panjiangfy/p/cxuexi3.html
Copyright © 2011-2022 走看看