C++_primer_plus学习笔记 第3章 处理数据(基本类型)

本章内容包括:

  • C++内置基本类型:整数和浮点数
  • 使用变量标识存储的数据
  • char类型和ASCII码
  • 浮点数及精度降低
  • C++算数运算
  • C++类型转换:自动和强制

整型

//程序清单3.1
//整型极限

#include <iostream>
#include <climits>

int main(void)
{
    using namesoace std;

    int n_int = INT_MAX;                //初始化n_int为int最大值
    short n_short = SHRT_MAX;           //XX_MAX为climits文件中定义的符号
    long n_long = LONG_MAX;             //初始化将赋值和声明合并
    long long n_llong = LLONG_MAX;

    //sizeof运算符生成类型或变量的大小
    cout << "int is " << sizeof(int) << " bytes." << endl;
    cout << "short is " << sizeof n_short << " bytes." << endl;
    cout << "long is " << sizeof n_long << " bytes." << endl;
    cout << "long long is " << sizeof n_llong << " bytes." << endl;
    cout << endl;

    cout << "Maximum Values:" << endl;
    cout << "int: " << n_int << endl;
    cout << "short: " << n_short << endl;
    cout << "long: " << n_long << endl;
    cout << "long long: " << n_llong << endl << endl;

    cout << "Minimum int value = " << INT_MIN << endl;
    cout << "Bits per byte = " << CHAR_BIT << endl;

    return 0;
}
  • 计算机内存的基本单元是位(bit)。字节(byte)通常指8位的内存单元
  • sizeof返回类型或变量的长度,单位为字节(byte)
  • sizeof不是函数只是运算符,后跟数据类型+括号,或变量名+括号可选
  • 头文件climits包含关于整型限制的信息,定义了各种限制的符号名称
  • C语言初始化:int owls = 101;C++还有一种初始化:int wrens(432);
  • 还有一种初始化,适用于数组和结构:int hamburgers = {24};int hamburgers {24};
  • 将变量声明和赋值分开,可能会带来瞬间悬而未决的问题
//程序清单3.2
//超出整数极限

#include <iostream>
#define ZERO 0            //ZERO代表0
#include <climits>

int main(void)
{
    using namespace std;
    short sam = SHRT_MAX;            //32767
    unsigned short sue = sam;        //32767

    cout << "Sam has " << sam << " dollars and Sue has " << sue 
         << " dollars deposited.\n";
    cout << "Add $1 to each account." << endl << "Now ";
    sam = sam + 1;                   //-32768
    sue += 1;                        //32768
    cout << "Sam has " <&
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值