C++学习章节要点总结

本文详细介绍了C++中的数据处理,包括变量名的规则、整型(short、int、long、long long、无符号类型)的使用、浮点数(float、double、long double)的概念和精度问题,以及类型转换和运算符优先级。文章还讨论了char类型、bool类型以及const限定符的重要性和用法,最后总结了选择合适数据类型和避免类型转换带来的问题的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第三章 处理数据

3.1.1 变量名

变量名的起名一般表示该变量有什么作用即一定含义的变量名。关于变量名,必须遵循以下C++的命名规则。

  • 在名称中,只能使用字母字符、数字和下划线。
  • 变量名的第一个字符不能是数字。
  • 变量名区分大小写。
  • 不能将C++关键字用作名称。
  • 以两个下划线或下划线和大写字母打头的名称被保留给实现(编译器及其使用的资源)使用。以一个下划线开头的名称将被保留给实现,用作全局标识符。(这样命名可能会导致行为的不确定性。即不知道会出现什么结果。编译器不报错的原因为这样命名并不是非法的,但要留给实现使用。)
  • 在有一些平台中,对名称的长度有所限制。但C++对名称的长度是没有限制的。

3.1.2 整型

整数就是没有小数部分的数字。

3.1.3 整型short、int、long和long long

C++的short、int、long和long long类型通过不同数目的位来存储值,最多能够表示4种不同的整数宽度。

计算机内存的基本单位是位(bit)。可以将位看作是电子开关,可以开,也可以关。关表示的值为0,开表示的值为1。4位的内存块可以设置出64种不同的组合,因为每一位都有两种情况即2x2x2x2=64种。

字节(byte)通常是指8位的内存单元。字节就是描述计算机的度量单位,1KB=1024字节,1MB=1024KB。

下面一段代码为各种类型的长度。

#include<iostream>
#include<climits>
using namespace std;
int main()
{
	int n_int = INT_MAX;
	short n_short = SHRT_MAX;
	long n_long = LONG_MAX;
	long long n_llong = LLONG_MAX;
	//sizeof operator yields size of type or of variable
	cout << "int is " << sizeof(int) << "bytes." << endl;
	cout << "short is " << sizeof n_short << "bytes" << endl;
	cout << "longlong is" << sizeof n_llong << "bytes" << endl;
	cout << "long is" << sizeof n_long << "bytes" << 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;
}

关于sizeof使用的一个小tip:对类型名使用sizeof运算符的时候要带括号,但对变量名使用sizeof的时候括号可以不带

关于初始化,一般都是初始化将赋值与声明合并在一起。有一种初始化方式为C++11初始化方式,这种方式用于数组和结构。(int owl={3};//将3赋值给owl int owl={}//将owl初始化值为0)

3.1.4 无符号类型

例,short表示的范围为-32768到+32768,则无符号版本表示的范围为0到+65535。要创建无符号版本的基本整型,只需要使用关键字unsigned来创建。

下面有一段代码关于无符号类型与有符号类型的区别。

#include<climits>
#include<iostream>
using namespace std;
int main()
{
	short sam = SHRT_MAX;
	unsigned short sue = sam;
	cout << "Sam has " << sam << "dollars and Sue has " << endl;
	cout << " dollars deposited .\nPoor Sam!" << endl;
	sam = 0;
	sue = 0;
	cout << "Sam has &#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值