博客
关于我
C++的数据类型
阅读量:596 次
发布时间:2019-03-12

本文共 2219 字,大约阅读时间需要 7 分钟。

C++ 语言入门

C++ 是一种强类型语言,具有强大的数据类型、运算符和编程能力。它兼容底层的 C 语言,同时扩展了许多 modern C++ 统狱特性。以下将介绍 C++ 的基础知识,包括数据类型、变量、常量、运算符等。


数据类型

C++ 中的数据类型可以分为基本类型和非基本类型。

基本数据类型

基本数据类型根据存储大小和用途可分为以下几类:

  • bool:布尔型,用于表示真值(true或false),占用1字节。
  • [signed] char:有符号字符型,字符范围为-128到127,占用1字节。
  • [unsigned] char:无符号字符型,字符范围为0到255,占用1字节。
  • [signed] short [int]:有符号短整型,范围为-32768到32767,占用2字节。
  • [unsigned] short [int]:无符号短整型,范围为0到65535,占用2字节。
  • [signed] int:有符号整型,范围为-(2^31)到(2^31-1),占用4字节。
  • [unsigned] int:无符号整型,范围为0到2^32-1,占用4字节。
  • [signed] long [int]:有符号长整型,范围与int相同,占用4字节。
  • [unsigned] long [int]:无符号长整型,范围与int相同,占用4字节。
  • float:浮点型,用于存储单精度小数,占用4字节。
  • double:双精度型,用于存储高精度小数,占用8字节。
  • long double:长双精度型,占用16字节。
  • void:无值型,没有实际容量。

非基本数据类型

C++ 还支持用户定义的数据类型,例如类、结构体、共用体等。这些非基本类型会在后续内容中详细介绍。


变量

变量说明

在 C++ 中,变量用于存储数据,并通过类型声明指定变量的数据类型。变量的声明格式为:

类型说明符 变量名1, 变量名2, ...

例如:

int i, j; // 两个整型变量i和jfloat x, y, z; // 三个浮点变量x, y, zchar c1, c2; // 两个字符型变量c1, c2

变量的使用

变量需要在使用前进行初始化。初始化可以在声明时直接指定,或者通过赋值语句完成。

  • 声明时初始化
    int a = 3, b = 4;float x = 3.0;
  • 赋值语句
    float x, e;x = 3.5;e = 2.71828;
  • 变量的作用域

    变量的作用域由定义的位置决定。比如,函数内部定义的变量只在函数体内可使用,称为局部变量。至于全局变量,其在程序中任何地方都可以访问,使用前需谨慎。


    常量

    文字常量

    文字常量是直接在程序中给出的量,例如:

    • 整数常量:313,0x4b(十六进制),30u(无符号整数)。
    • 浮点常量:3.1415,1e-5(科学计数法)。
    • 布尔常量:true,false。
    • 字符型常量:'a','\n'(换行符)。

    常变量

    常变量通过 const关键字声明,表示只能在声明时赋值,之后不能改变。例如:

    const float PI = 3.14159;

    符号常量

    可以通过 #define命令定义符号常量。例如:

    #define WIDTH 5#define NEWLINE '\n'

    注意:符号常量只是占位符,不占用存储空间。


    表达式、运算符和优先级

    算术运算符

    C++ 支持以下算术运算符:

    运算符 描述 示例
    + 相加 a + b
    - 相减 a - b
    * 相乘 a * b
    / 相除 a / b
    % 取模 a % b
    ++ 自增 a++
    -- 自减 a--

    赋值运算符

    赋值运算符用于将值赋给变量。常见的有:

    运算符 描述 示例
    = 赋值 c = a
    += 加法 c += a
    -= 减法 c -= a
    *= 乘法 c *= a
    /= 除法 c /= a
    %= 取模 c %= a
    <<= 左移 c <<= 2
    >>= 右移 c >>= 2
    &= 按位与 c &= a
    ^= 按位异或 c ^= a
    = 按位或 c = a

    逻辑运算符

    用于与逻辑运算的有 &&(逻辑与)、||(逻辑或)、!(逻辑非)。

    位运算符

    常用于二进制数据的操作,包括 &(与)、|(或)、^(异或)、<<(左移)、>>(右移)、~(补码)。

    其他运算符

    还有一些其他运算符,如 ?(条件?),sizeof(数据类型所需字节数),逗号运算符 ,",以及用于对象访问的点运算符 . 和箭头运算符 ->


    优先级

    运算符的优先级由高到低依次为:1.括号、成员访问、函数调用2.一元运算符(!, ++, --, sizeof, &)3.乘除整除模运算4.加减运算5.移位运算6.关系运算符(<, >, <=, >=, ==, !=)7.逻辑与、逻辑或8.赋值运算符9.逗号运算符


    数据类型转换

    C++默认采用标准转换规则,确保数值在转换时不会丢失精度。特定的转换还可以通过显式转换符或类型说明符实现。例如:

    int a = 2.2000;double a = 3.1415; // 右边转为左边类型float b = static_cast
    (10.5); // 显式转换char c = 'a'; // 转换为字符int d = c; // 转换为整数

    以上是 C++ 的基础知识概述,接下来可以深入探讨类、继承、异常处理等高级特性!

    转载地址:http://vxsxz.baihongyu.com/

    你可能感兴趣的文章
    案例讨论
    查看>>
    注册页面案例
    查看>>
    np.bincount(x)的简单解释
    查看>>
    LeetCode Top-100 T22-括号生成
    查看>>
    vscode设置eslint保存文件时自动修复eslint错误
    查看>>
    JAVA 多线程
    查看>>
    牛客-链表中环的入口节点(Java)
    查看>>
    堆的应用_topK算法和堆排序
    查看>>
    最大半连通子图
    查看>>
    Remove Extra one 维护前缀最大最小值
    查看>>
    另类加法,走方格的方案数,最近公共祖先
    查看>>
    [Java Path Finder][JPF学习笔记][7]JPF输出详细程度设置
    查看>>
    GitHub完整记录数据库GHTorrent的下载和安装经验
    查看>>
    设计模式—— 三:依赖倒置原则
    查看>>
    因SGA分配错误无法启动数据库
    查看>>
    ORA-00020 超过当前最大连接数
    查看>>
    喝红茶是否会上火
    查看>>
    Android进阶解密读书笔记2——第2章:Android系统启动——第1、2小节
    查看>>
    Android进阶解密读书笔记3——第2章:Android系统启动——第3、4、5、6小节
    查看>>
    主线程中Looper的轮询死循环为何没有阻塞主线程?
    查看>>