目录
之前两篇主要大概认识一下,知道怎么搭建环境,(不会新建项目,新建cpp文件的建议去找个视频观看,这里的主要是作为一个笔记展示,文字性的东西,能看的人本来就不多,所以建议性子比较急的人去看视频学,那样会快一点。这里大概就是你可以快速的浏览一遍,基本就再看视频,上手也会很快,写代码不能心急,沉稳,冷静思考。)
3.1 整型常量、定义
整型常量(Integer Constants)关键字:int
整型常量是指表示整数值的常量。在 C++ 中,我们可以使用多种进制来表示整型常量,包括十进制、八进制和十六进制。
以下是一些整型常量的示例和定义方式:
十进制常量:使用十进制数字表示的整数常量。
int decimal = 123; // 十进制常量,值为 123
八进制常量:使用前缀 0
表示的八进制数字表示的整数常量。
int octal = 0123; // 八进制常量,值为 83(相当于十进制的 83)
十六进制常量:使用前缀 0x
或 0X
表示的十六进制数字表示的整数常量。
int hexadecimal = 0x123; // 十六进制常量,值为 291(相当于十进制的 291)
除了上述的整型常量定义方式,我们还可以使用一些特殊的前缀和后缀来指定整型常量的类型和范围:
L 或 l 后缀:用于表示长整型常量。
long int longInt = 1234567890L; // 声明一个长整型常量,值为 1234567890
U 或 u 后缀:用于表示无符号整型常量。
unsigned int unsignedInt = 12345U; // 声明一个无符号整型常量,值为 12345
LL 或 ll 后缀:用于表示长长整型常 量。
long long int longLongInt = 1234
3.2 变量的初始化、声明
变量的声明(Variable Declaration) 是指在程序中引入一个新的变量名称,并指定该变量的类型,以便在后续的代码中使用。变量的声明告诉编译器有一个特定类型的变量存在,但并不分配内存空间,也不会给变量赋初始值。
extern int x; // 声明一个名为 x 的整数变量
在上述示例中,我们声明了一个名为 `x` 的整数变量,但并未分配内存空间或分配初始值。要注意的是,通过只声明变量而不进行初始化,变量的值是未定义的。
变量的初始化(Variable Initialization) 是指在变量声明的同时,为变量分配初始值。变量的初始化可以在声明时进行,也可以在后续的代码行中进行。
int x = 5; // 声明一个名为 x 的整数变量,并将其初始化为 5
int y; // 声明一个名为 y 的整数变量
y = 10; // 给变量 y 赋值为 10
在实际编程中,为了避免使用未初始化的变量,最好在声明变量的同时进行初始化,以确保变量具有可预测的值。
总结一下:
- 变量的声明 是指在程序中引入一个新的变量名称,并指定该变量的类型,声明时不分配内存空间或赋初始值。
- 变量的初始化 是指在变量声明的同时,为变量分配初始值,或在声明后的代码行中为变量赋值。
通过正确的声明和初始化变量,我们可以确保变量在使用之前具有可预测的值,避免潜在的错误和不可预测的行为。
3.3 字符常量、字符变量、获取字符键盘的输入
在 C++ 中,可以使用 std::cin
来获取键盘输入。std::cin
是 C++ 标准库中的输入流对象,它可以与键盘输入进行交互,将用户输入的数据赋值给变量。
以下是使用 std::cin
获取键盘输入的基本步骤:
-
包含头文件:首先需要包含输入/输出流相关的头文件。
#include <iostream>
2. 声明变量:声明一个变量,用于接收用户的输入。
int num;
3.使用 std::cin
获取输入:使用 std::cin
对象与输入运算符 >>
结合,将用户的输入赋值给变量。
std::cin >> num;
4.使用获取的输入:通过使用获取到的变量值,进行后续的操作。
std::cout << "输入的值是:" << num << std::endl;
完整实例:
#include <iostream>
int main() {
int num;
std::cout << "请输入一个整数:";
std::cin >> num;
std::cout << "输入的值是:" << num << std::endl;
return 0;
}
在运行程序后,它会等待用户输入一个整数,并将用户输入的值输出到屏幕上。
接着:我们输入一个520----回车确认
需要注意的是,std::cin
默认以空格、制表符或换行符作为输入数据的分隔符。如果需要多次获取输入,可以使用 std::cin.ignore()
函数清除缓冲区中的多余字符。
std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
使用 std::cin
来获取键盘输入可以让我们与用户进行交互,动态地获取和处理输入数据。
3.4 大小写转换
void test05(){//大小写转换
//定义一个字符变量
char ch = '\0';
//给字符变量获取键盘输入
cout << "请输入一个字符:";
cin>>ch; //获取字符类型的输入
//大小写转换
if(ch >= 'a' && ch<='z') //小写字母
{
ch = ch -('a'-'A');
}else if(ch >= 'A' && ch<='Z'){//大写字母
ch = ch + ('a'-'A');
}
cout << "大小写转换的结果ch为:" << ch;
}
这里涉及到ASCII码存储的英文字符和特殊符号对应的位置:
3.5 字符常量---字符串常量的区别
字符常量(Character Constant) 是指表示单个字符的常量。在 C++ 中,字符常量使用单引号括起来,例如 'A'
、'1'
或 '!'
。
示例:
char ch = 'A'; // 声明一个字符变量 ch,赋值为字符常量 'A'
字符串常量(String Constant) 是指表示由多个字符组成的常量,也称为字符串。在 C++ 中,字符串常量使用双引号括起来,例如 "Hello"
、"123"
或 "!@#"
。
示例:
const char* str = "Hello"; // 声明一个字符串常量指针 str,赋值为字符串常量 "Hello"
字符串常量实际上是一个字符数组,在内存中占用多个字节,末尾以空字符 '\0'
结束。字符串常量是不可变的,不能对其进行修改。
区别总结:
- 字符常量 是用单引号括起来的单个字符。
- 字符串常量 是用双引号括起来的一串字符,以空字符
'\0'
结束。 -
每个字符串的结尾,编译器会自动的添加一个结束标志为 ‘\0’,即”a”包含两个字符’a’和’\0’
字符常量和字符串常量在使用方式、存储方式和表示的数据范围上有明显的区别。
3.6 数据类型--实型、有符号数、无符号数
我们在编程中处理数据时,我们需要使用不同的数据类型来表示不同的值和变量。其中,三个常见的数据类型是实型(浮点型)、有符号数和无符号数。
实型(浮点型)数据类型 是指用于表示实数(包括整数和小数)的数据类型。在 C++ 中,常见的实型数据类型有 float
、double
和 long double
。
float
类型通常用于表示单精度浮点数,占用 4 字节的存储空间。double
类型通常用于表示双精度浮点数,占用 8 字节的存储空间。long double
类型通常用于表示更高精度的浮点数,占用的存储空间可能会更大。
实型数据类型可以表示小数和更大范围的整数,并且可以进行浮点数运算。然而,由于实数的表示和计算存在精度限制,因此在进行比较时需要注意舍入误差。
实型数据类型可以表示小数和更大范围的整数,并且可以进行浮点数运算。然而,由于实数的表示和计算存在精度限制,因此在进行比较时需要注意舍入误差。
有符号数 是指能够表示正数、负数和零的数据类型。在 C++ 中,整型数据类型(如 int
、long
、short
)默认为有符号数。有符号数可以表示正数、负数或零,并具有范围限制。
例如,int
类型通常用于表示整数值,可以表示的取值范围是 -2147483648 (-2^31 - 1)到 2147483647。(2^31 -1)
无符号数 是指只能表示非负数和零的数据类型。在 C++ 中,可以通过在整型数据类型的前面加上 unsigned
修饰符来表示无符号数。
例如,unsigned int
表示只能表示非负整数的无符号整数,可以表示的范围是 0 到 4294967295。(2^32 - 1)
无符号数可以表示更大的正整数范围,但不能表示负数。在使用无符号数时需要注意数据的溢出问题。
总结一下:
- 实型(浮点型)数据类型 用于表示实数(包括整数和小数),如
float
、double
和long double
。 - 有符号数 是指能够表示正数、负数和零的数据类型,默认情况下整型数据类型是有符号数。
- 无符号数 是指只能表示非负数和零的数据类型,可以通过使用
unsigned
修饰符来表示。