C++学习笔记——处理数据

本文详细介绍了C++中的数据处理,包括变量命名规则、整型(如char、short、int等)、无符号类型、浮点数(如float、double)、常量限定符、算术运算符的优先级和类型转换等内容。
摘要由CSDN通过智能技术生成

二. 处理数据

2.1 简单变量

2.1.1 变量名

C++命名规则:

        ·在名称中只能使用字母字符、数字和下划线。

        ·名称的第一个字符不能是数字。

        ·区分大小写。

        ·不能将C++关键字用作名称。

        ·下划线打头的名称被保留给实现(编译器及其使用的资源)使用。

2.1.2 整型

C++的基本整型(按宽度递增的顺序排列)分别是char、short、int、long、long long,其中每种类型都有有符号版本和无符号版本。

        ·short至少16位;

        ·int至少与short一样长;

        ·long至少32位,且至少与int一样长;

        ·long long至少64位,且至少与long一样长。

一字节(byte)= 8位(bit)

2.1.3 无符号类型

使用关键字unsigned修饰声明:unsigned int、unsigned short、...

2.1.4 整型字面值

        ·第一位为1~9,则基数为10(十进制),例:93以10为基数;

        ·第一位为0,第二位为1~7,则基数为8(八进制),例:042相当于十进制34;

        ·前两位为0x或0X,则基数为16(十六进制),例:0x42相当于十进制66

2.1.5 bool类型

true为真,false为假。

2.2 const限定符

关键字const叫做限定符,它限定了声明的含义。常量被初始化后,其值就被固定了,编译器将不允许再修改该常量的值。常见做法是将名称首字母大写。创建常量的通用格式如下:

const type name = value;

应在声明中对const进行初始化。

2.3 浮点数

2.3.1 书写浮点数

第一种是常用的标准小数点表示法:12.34

第二种为E表示法:2.52e+8(表示2.52*10^8)、8.33E-4(表示8.33/10^4)

2.3.2 浮点类型

C++有三种浮点类型:float、double和long double。

2.3.3 浮点常量

1.234f、2.2L

2.3.4 浮点数的优缺点

优点:可以表示的范围大

缺点:浮点运算速度通常比整数运算慢,且精度将降低。

总结

        C++对基本类型进行分类,形成了若于个族。类型signed char、short;int和 long统称为符号整型;它们的无符号版本统称为无符号整型;C++11新增了long long。bool、char、wchar_t、符号整教和无符号整型统称为整型;C++IF新增了char16_t和char32_t.  float、double和 long double统称为浮点型。整数和浮点型统称算术( arithmetic)类型。

2.4 C++算数运算符

五种基本的C++算数运算符:+、-、*、/、%

2.4.1 运算符优先级和结合性

先乘除后加减,*、/、%优先级相同,优先级相同时,看操作数的结合性是从左向右还是从右向左,乘除是从左向右结合。

2.4.2 除法分支

除法运算符/的行为取决于操作数的类型。如果两个操作数都是整数,则C++将执行整数除法。如果其中至少有一个操作数是浮点数,则小数部分将保留,结果为浮点数。

运算符重载:使用相同的符号进行多种操作。

2.4.3 求模运算符

求模运算符返回整数除法的余数。

2.4.4 类型转换

· 将一种算数类型的值赋给另一种算数类型的变量时,C++将对值进行转换;

· 表达式中包含不同的类型时,C++将对值进行转换;

· 将参数传递给函数时,C++将对值进行转换。

1. 初始化和赋值进行的转换

C++允许将一种类型的值赋给另一种类型的变量,值将被转换为接受变量的类型。

将0赋给bool变量时,将被转换为false;而非零值将被转换为true。

2. 以{}方式初始化时进行的转换

C++将使用大括号的初始化称为列表初始化,列表初始化不允许缩窄。

3. 表达式中的转换

当运算涉及两种类型时,较小的类型将被转换为较大的类型。

4. 传递参数时的转换

传递参数时的类型转换通常由C++函数原型控制。

5. 强制类型转换

通用格式:

(typename) value

   typename (value)

2.4.5 C++中的auto声明

使用关键字auto,编译器将把变量的类型设置成与初始值相同:

auto n = 100;        // n is int

2.5 总结

        C++的基本类型分为两组: 一组由存储为整数的值组成,另一组由存储为浮点格式的值组成。整型之间通过存储值时使用的内存量及有无符号来区分。整型从最小到最大依次是: bool、char、signed char、unsigned char、short、unsigned short、int、unsigned int、long、unsigned long以及C++11新增的long long和unsigned long long。还有一种 wchar_t类型,它在这个序列中的位置取决于实现。C++11新增了类型char16_t和 char32_t,它们的宽度足以分别存储16和32位的字符编码。C++确保了char足够大,能够存储系统基本字符集中的任何成员,而 wchar_t则可以存储系统扩展字符集中的任意成员,short至少为16位,而int至少与short一样长,long 至少为32位,且至少和 int一样长,确切的长度取决于实现。
        字符通过其数值编码来表示。I/O系统决定了编码是被解释为字符还是数字。
        浮点类型可以表示小数值以及比整型能够表示的值大得多的值。3种浮点类型分别是float、double和long double。C++确保float 不比double 长,而 double不比 long double长。通常, float使用32位内存, double使用64位,long double使用80到128位。
        通过提供各种长度不同、有符号或无符号的类型,C++使程序员能够根据特定的数据要求选择合适的类型。
        C++使用运算符来提供对数字类型的算术运算;加、减、乘、除和求模。当两个运算符对同一个操作数进行操作时,C++的优先级和结合性规则可以确定先执行哪种操作。

        对变量赋值、在运算中使用不同类型、使用强制类型转换时,C++将把值从一种类型转换为另一种型。很多类型转换都是“安全的”,即可以在不损失和改变数据的情况下完成转换。例如,可以把 int值转换为long值,而不会出现任何问题。对于其他一些转换,如将浮点类型转换为整型,则需要更加小心。

  • 26
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值