C++数据类型

引言

数据类型存在的意义:

给变量分配合适的空间

2.1 整型

#include <iostream>
using namespace std;

int main()
{
    // 1.短整型(32768 - 32767)
    short num1 = 10;
    // 2.整型
    int num2 = 10;
    // 3.长整型
    long num3 = 10;
    // 4.长长整型
    long long num4 = 10;
    //以下结果一样。
    cout << "num1= "<< num1 << endl;
    cout << "num2= "<< num2 << endl;
    cout << "num3= "<< num3 << endl;
    cout << "num4= "<< num4 << endl;

    num1 = 32768; //修改值超出范围,输出-32768
    num2 = 32768;
    cout << "num1= "<< num1 << endl;
    cout << "num2= "<< num2 << endl;

    return 0;
}

 2.2 sizeof关键字

作用:利用sizeof可以统计数据类型占用内存大小
语法:sizeof(数据类型)或者sizeof(变量)
示例:

#include <iostream>
using namespace std;

int main()
{
    // 1.短整型(32768 - 32767)
    short num1 = 10;
    // 2.整型
    int num2 = 10;
    // 3.长整型
    long num3 = 10;
    // 4.长长整型
    long long num4 = 10;
    cout << sizeof(num1) << endl;  //2
    cout << sizeof(num2) << endl;  //4
    cout << sizeof(num3) << endl;  //4
    cout << sizeof(num4) << endl;  //8

    return 0;
}

shout < int <= long <= long long

2.3 实型(浮点型)

作用:用于表示小数
浮点型变量有两种:
1. 单精度 float
2. 双精度 double
两者区别在于表示的有效数据范围不同。

#include <iostream>
using namespace std;

int main()
{
    // C++中输出小数,默认显示6位有效数字
    //单精度 float
    float f1 = 3.1415926f; // f告诉他是单精度
    // 双精度 double
    double d1 = 3.1415926;
    cout << f1 << endl;
    cout << d1 << endl;

    // 统计float和double占用内存空间大小
    cout << sizeof(float) << endl;; //4字节
    cout << sizeof(double) << endl; //8字节

    //科学计数法
    float f2 = 3e2; //3 * 10`2
    cout << f2 << endl;
    float f3 = 3e-2; // 3 * 10`(-2)
    cout << "f3=" << f3 << endl;
    return 0;
}

2.4 字符型

作用:字符型变量用于显示单个字符
语法:` char ch = 'a'; `

#include <iostream>
using namespace std;

int main()
{
    // 字符型
    char ch = 'a';
    cout << "ch=" << ch << endl; //a
    // 字符所占内存大小
    cout << sizeof(ch) << endl; //1
    // 字符型变量错误
    //char ch = "a"; 错误,双引号代表字符串,字符用单引号
    // char ch = 'aa'; 错误,只能存带个字符

    // 字符变量对应的ascii编码
    //常见的ASCII值 a = 97
    //常见的ASCII值 A = 65 
    cout << "字符变量ch对应的ASCII编码值" << int(ch) << endl; //97, int(ch)代表将ch的值强制转换位整形

    return 0;
}

 ASCII编码表格

 

 2.5转义字符

作用:用于表示一些不能显示出来的ASCII字符表:

#include <iostream>
using namespace std;

int main()
{
    // 输出反斜杠
    cout << "\\" << endl;
    // 水平制表符,整齐的输出数据
    cout << "a\tb" << endl;
    cout << "aaa\tb" << endl;
    
    return 0;
}

 2.6 字符串型

作用:用于表示一串字符串
两种风格
1. C风格字符串: char 变量名[] = "字符串值";
2. C++风格字符串: string 变量名 = "字符串值"; 
string类型在64位系统中,占用32个字节

#include <iostream>
#include <string> // 用C++风格字符串包含
using namespace std;

int main()
{
    // 字符串型
    // 1.C语言字符型
    // 注意事项 记得加[], 用双引号包裹

    char c_ch[] = "this is c char";
    cout << c_ch << endl;

    // 2.C++风格字符串
    string cpp_ch = "this is cpp char";
    cout << cpp_ch << endl;
    cout << sizeof(cpp_ch) << endl; //32字节
    return 0;
}

2.7 布尔类型

作用:布尔类型代表真和假
        ture 真(本质是1)
        false 假(本质是0)

bool类型占一个字节大小
 

#include <iostream>
#include <string> // 用C++风格字符串包含
using namespace std;

int main()
{
    // 布尔类型
    bool flag = true;
    cout << "flag=" << flag << endl; // 1
    flag = false;
    cout << "flag=" << flag << endl; // 0


    // 布尔类型所占内存空间
    cout << sizeof(flag) << endl; // 1字节

    return 0;
}

2.9 数据的输入

作用:用于键盘获取数据
关键字:cin
语法:cin >> 变量

#include <iostream>
#include <string> // 用C++风格字符串包含
using namespace std;

int main()
{
    // 1.整形
    int a ;
    cout << "请给a进行赋值" << endl;
    cin >> a;
    cout << "整型变量a=" << a << endl;

    // 2.浮点型
    float b ;
    cout << "请给b进行赋值" << endl;
    cin >> b;
    cout << "浮点型b=" << b << endl;
    // 3.字符型
    char c ;
    cout << "请给c进行赋值" << endl;
    cin >> c;
    cout << "字符型c=" << c << endl;

    // 4.字符串型
    string d ;
    cout << "请给字符串d进行赋值" << endl;
    cin >> d;
    cout << "字符串变量d=" << d << endl;
    // 5.布尔类型
    bool e ;
    cout << "请给e进行赋值" << endl;
    cin >> e;
    cout << "布尔变量e=" << e << endl;
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值