C++零基础学习笔记第二节“数据类型“

目录

1、整型

2、sizeof关键字

3、实型(浮点型)

4、字符型

5、转义字符

6、字符串型

7、布尔类型

8、数据输入

个人学习笔记

1、整型

  • short:短整型,通常用于存储较小的整数。
  • int:整型,是C++中最常用的整数类型。
  • long:长整型,用于存储比int更大的整数。
  • long long:长长整型,用于存储比long更大的整数。
    数据类型占用空间取值范围
    short(短整型)2字节-2^15 ~ 2^15-1
    int(整型)4字节-2^31 ~ 2^31-1
    long(长整形)Windows为4字节;Linux为4字节(32位),8字节(64位)-2^31 ~ 2^31-1
    long long(长长整形)8字节-2^63 ~ 2^63-1

代码定义了四个整数类型的变量,并分别初始化为10。这些整数类型有不同的范围和存储大小:

#include <iostream>
using namespace std;
int main()
{
	//整型
	short num_1 = 10;//1、短整型
	int num_2 = 10;//2、整型
	long num_3 = 10;//3、长整型
	long long num_4 = 10;//4、长长整型

	cout << "num_1 = " << num_1 << endl;
	cout << "num_2 = " << num_2 << endl;
	cout << "num_3 = " << num_3 << endl;
	cout << "num_4 = " << num_4 << endl;

	return 0;
}

这部分代码使用cout对象将四个变量的值输出到控制台。endl是一个操作符,用于插入一个换行符,并刷新输出流。

当你运行这段代码时,它会在控制台上输出以下内容:

num_1 = 10  
num_2 = 10  
num_3 = 10  
num_4 = 10

每个变量都被赋予相同的值(10),但由于它们的类型不同,它们可能在内存中占用不同的空间。

2、sizeof关键字

sizeof关键字可统计数据类型所占用的内存大小

这段代码的主要目的是输出不同整数类型在特定编译器和平台下所占用的内存大小。代码中定义了四种类型的整数变量(shortintlonglong long),但并未输出这些变量的值,而是输出了它们各自类型以及具体变量所占用的字节数。

#include <iostream>
using namespace std;
int main()
{
	//整型
	short num_1 = 10;//1、短整型
	int num_2 = 10;//2、整型
	long num_3 = 10;//3、长整型
	long long num_4 = 10;//4、长长整型

	cout << "short占用空间内存为:" << sizeof(short) << endl;
	cout << "short占用空间内存为:" << sizeof(num_1) << endl;

	cout << "int占用空间内存为:" << sizeof(int) << endl;
	cout << "long占用空间内存为:" << sizeof(long) << endl;
	cout << "long long占用空间内存为:" << sizeof(long long) << endl;

	return 0;
}

 输出各类型及变量所占用的内存大小,以字节为单位:

        sizeof(short)与sizeof(num_1)实际上所占用的内存大小相同;

当你运行这段代码时,它将输出类似以下的结果(具体数值可能因编译器和平台而异):

short占用空间内存为:2  
short占用空间内存为:2  
int占用空间内存为:4  
long占用空间内存为:8  
long long占用空间内存为:8

注意:sizeof操作符返回的是该类型或对象所占用的字节数。

3、实型(浮点型)

浮点型变量表示小数类型的数据

浮点型变量分为两种,区别在于表示的有效数字范围不同

#include<iostream>
using namespace std;

int main() {
	//输出多位小数时,默认会显示6位有效数字

	//在数字末尾显式地使用字母“f”表示单精度,否则编译器会默认将小数视为双精度浮点型
	float f = 3.14f;
	cout << "f = " << f << endl;

	double d = 3.14;
	cout << "d = " << d << endl;

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

	//科学计数法
	float f2 = 3e2;//3*10^2
	cout << "f2 = " << f2 << endl;//300

	float f3 = 3e-2;//3*0.1^2
	cout << "f3 = " << f3 << endl;//0.03


	system("pause");
	return 0;
}

注意:

1、有效数字包括整数部分和小数部分。
2、C++输出多位小数时默认会显示6位有效数字,需进行额外配置以完整显示全部有效数字。
3、float类型表示小数时,在数字末尾显式地使用字母“f”表示单精度,否则编译器会默认将小数视为双精度浮点型(double),再进行类型转换(由double型转换为float型)。

4、字符型

字符型变量只占用1个字节

字符型变量是将对应的ASCII编码存放至内存,而不是字符本身

字符型变量可表示单个字符;char ch = 'a'

注意:

1、使用单引号表示字符,且单引号内有且仅有1个字符,不可以是字符串。
2、使用 (int) ch 查询字符对应的ASCII编码。'a’对应97,'A’对应65

#include <iostream>
using namespace std;
#include <string> //string头文件

int main() {
	//字符型变量创建方式
	char ch = 'a';
	cout << ch << endl;

	//字符型变量所占内存大小
	cout << "char字符型变量占用的内存大小:" << sizeof(char) << endl;
	cout << "char字符型变量占用的内存大小:" << sizeof(ch) << endl;

	//字符型变量常见错误
	//char ch2 = "b";		//错误:表示字符时需使用单引号
	//char ch2 = 'abcdef';	//错误:单引号内只能有一个字符

	//字符型变量对应ASCII编码(a:97; A:65)
	cout << (int)ch << endl;
	return 0;
}

5、转义字符

表示一些特殊的无法直接显示的ASCII字符
常用的转义字符有:\n \\ \t

注意:

1、C语言中使用转义字符\n换行,C++中使用endl换行。
2、表示水平制表符的转义符\t占据8个字符宽度。

#include <iostream>
using namespace std;
#include <string> //string头文件

int main() {
	cout << "\\" << endl;
	cout << "\tHello" << endl;
	cout << "\n" << endl;

	return 0;
}

6、字符串型

表示一串字符

注意:

1、C风格字符串: char 变量名[] = "字符串值";

                使用C风格字符串时,需使用双引号将字符串值括起来。
2、C++风格字符串: string 变量名 = "字符串值";

                使用C++风格字符串时,需包含头文件#include <string>

#include <iostream>
using namespace std;
#include <string> //string头文件

int main() {
	//C风格字符串
	char cStr[] = "hello c str";
	cout << cStr << endl;

	//C++风格字符串
	string cppStr = "hello cpp str";
	cout << cppStr << endl;
	return 0;
}

7、布尔类型

布尔数据类型表示真或假的值
bool类型占1个字节大小,且只有两个值:
(1)true: 真(本质是1)
(2)false:假(本质是0)

注:C++的bool类型中,true 或 任意非0值 均代表“真”; false 或 0值 代表“假”。

#include <iostream>
using namespace std;
#include <string> //string头文件

int main() {
	bool flag = true;
	cout << flag << endl;	// 1(真)

	/* C++的bool类型中,true 或 任意非0值 均代表“真” */
	flag = 6.66f;
	cout << flag << endl;	// 1(真)

	flag = false;
	cout << flag << endl;	// 0(假)

	/* C++的bool类型中,false 或 0值 代表“假” */
	flag = 0;
	cout << flag << endl;	// 0(假)

	cout << "bool类型占用的内存大小:" << sizeof(bool) << endl;
	cout << "bool类型占用的内存大小:" << sizeof(flag) << endl;

	return 0;
}

8、数据输入

这段代码演示了如何使用输入输出流来从用户处获取不同数据类型的值,并输出这些值。

这里引入了iostreamstring两个头文件。iostream用于输入输出操作,而string用于支持字符串类型。

作用:从键盘获取数据,并赋值给cin对应的变量。
关键字:cin
语法: cin >> 变量

#include <iostream>
using namespace std;
#include <string> //string头文件

int main()
{
	//整型
	int a = 0;
	cout << "给a赋值:" << endl;
	cin >> a;
	cout << "a = " << a << endl;

	//浮点型
	float f = 3.14f;
	cout << "给f赋值:" << endl;
	cin >> f;
	cout << "f = " << f << endl;

	//字符型
	char c = 'a';
	cout << "给c赋值:" << endl;
	cin >> c;
	cout << "c = " << c << endl;

	//字符串型(string需要调用头文件)
	string str = "hello";
	cout << "给str赋值:" << endl;
	cin >> str;
	cout << "c = " << str << endl;

	//布尔型
	bool flag = false;
	cout << "给flag赋值:" << endl;
	cin >> flag;	//bool类型 只要是非0的值都代表真
	cout << "flag = " << flag << endl;

	system("pause");
	return 0;
}

这行代码在Windows平台上会暂停程序,并显示“按任意键继续...”的消息,等待用户按键。

system("pause");

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值