自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 C/C++中的strcat

字符数组必须有足够的空间来容纳要追加的字符串,否则可能导致缓冲区溢出的问题。成员函数来进行字符串的拼接操作。这些方式更安全、更方便,并且没有缓冲区溢出的风险。用于将两个字符串进行拼接。字符串都以 null 终止符结束。字符串的末尾,并返回指向。在 C++ 中,更推荐使用。

2023-12-12 13:08:09 651

原创 北邮信通C++实验最后四道题目

定义一个矩形类,长和宽是它的属性,可以求出矩形的面积。定义一个比较函数,比较两个矩形的面积,把面积大的矩形对象作为引用来返回。主函数中定义两个矩形,它们的长、宽已知,分别为矩形1:长5.2、宽4.3,矩形2:长100、宽20。再由键盘输入一个矩形的长、宽。调用比较函数进行比较,找出面积大的矩形,输出其面积。cout << year << "年" << month << "月" << day << "日" << endl;

2023-12-08 16:47:45 518

原创 C++易错题目(一)

是一个后置递增运算符,它会首先使用变量的当前值,然后将该值加 1。因此,在第一次循环中,的值在循环结束后再次递增一次。这意味着当循环结束时,然后进入 while 循环。循环会一直进行下去,直到。在 while 循环中,表达式。的值不为 0,循环会继续执行,的值由 -5 变为 -4。中的后置递增运算符会导致。因此,最终输出的结果是 1。对于这段代码,初始时变量。最终输出的是0还是1呢?被赋值为 -5,变量。的值会再次增加 1。

2023-12-06 13:34:48 407 1

原创 C++删除空格

'\0') {if (s[i]!= ' ')i++;return 0;

2023-12-05 21:14:35 917

原创 内层标识符与外层标识符

内部标识符通常用于指定一段代码块或函数的局部变量,而外部标识符则通常用于指定一个全局变量或函数。内部标识符的作用范围仅限于当前代码块或函数,而外部标识符的作用范围则可以延伸到整个程序。在某些编程语言中,内部标识符可能会被称为局部标识符,而外部标识符则可能会被称为全局标识符。无论如何,这两种标识符都是非常重要的,因为它们可用于定义变量或函数,并且有助于确保代码块或函数之间不会发生冲突。这意味着,内层标识符将重新定义外层标识符,并且在当前代码块或函数中,该标识符将引用内部变量而不是全局变量。

2023-12-05 20:15:29 546

原创 C++标识符的作用域

以上是 C++ 中常见的标识符作用域。需要注意的是,标识符的作用域对于变量的生存期和可见性都有影响。了解不同作用域的概念和用法,有助于编写更加清晰、健壮的代码。在 C++ 中,标识符的作用域是指标识符的有效范围,即可以被访问的位置。

2023-12-05 15:22:00 457

原创 C++中,函数体里可以有多个return语句

在 C++ 中,函数可以有多个返回语句,并且根据条件的不同,可以在函数的不同位置使用。语句的执行路径,以满足特定的逻辑要求。但无论如何,函数体内可以包含多个。需要注意的是,在某些情况下,可以使用条件语句或循环来控制函数中的。语句时,函数将立即结束,并将相应的返回值返回给调用者。以下是一个示例函数,其中包含多个。通过比较两个数的大小,通过多个。在函数体中,可以根据需要使用多个。语句返回其中较大的值。语句来返回不同的值。

2023-12-05 15:11:19 1323

原创 进行类的声明时,不需要为其数据成员分配内存空间

在进行类的声明时,并不需要为其数据成员分配存储空间。类的声明只是定义了一种数据类型,描述了类的成员函数和成员变量的接口和行为,但并不分配实际的内存空间。当你创建一个类的对象时,编译器会根据类的定义来分配内存空间。每个类的对象都会有自己的数据成员,这些成员变量的存储空间将在对象创建的时候分配。总结起来,类的声明只是定义了类的接口和行为,并不分配存储空间。而在创建对象时,会根据类的定义为对象分配存储空间,包括其中的数据成员。类只是一个声明,它描述了类的成员函数和成员变量的接口。

2023-12-05 14:59:44 456

原创 C++字符串赋值

这些方法提供了灵活的方式来操作和赋值字符串。在实际应用中,选择合适的赋值方式取决于具体的需求和代码逻辑。

2023-12-05 14:49:57 1131

原创 C++内联函数

需要注意的是,内联函数并不是在所有情况下都比普通函数更快。当函数体较大或者函数内部包含循环、递归等复杂的控制流结构时,内联函数可能会导致代码膨胀,反而降低程序的执行效率。因此,应该在编写内联函数时慎重考虑函数体的大小和复杂度。在运行过程中,程序会占用计算机的资源,如 CPU、内存、硬盘等,并根据代码逻辑执行相应的操作。C++ 内联函数是一种特殊的函数,它通常用于定义短小的函数,并将其直接插入到调用该函数的地方,以避免函数调用带来的额外开销。总之,内联函数可以提高程序的执行效率,但要慎重使用。

2023-12-05 14:34:01 346

原创 C++多维数组名做形式参数

需要注意的是,在使用指针或引用参数时,要确保传入的多维数组的维度与函数参数声明的一致,以避免出现类型不匹配或越界访问等错误。在 C++ 中,可以将多维数组名作为形式参数传递给函数。有两种常用的方式来声明接受多维数组的函数参数:指针和引用。,它引用了一个三维数组。通过引用操作,可以直接使用数组名。通过指针操作,可以访问整个多维数组。// 使用指针访问多维数组。,同时还接收一个表示数组大小的参数。// 使用引用访问多维数组。函数接受一个指向三维数组的指针。函数接受一个引用参数。

2023-12-05 14:24:58 450

原创 C++函数调用数组参数的传递方式

无论是传递指针还是传递引用,都可以在函数内部对数组进行修改,并且这些修改会影响到原始数组。但是需要注意的是,在使用指针或引用参数时,要确保传入的数组不为空,以避免出现空指针引用或越界访问等错误。传递引用: 可以使用引用作为函数参数来传递数组。这样做的好处是无需显式地指定数组大小,同时在函数内部可以直接使用数组名进行操作。传递指针: 当将数组作为参数传递给函数时,实际上传递的是数组的首元素的地址。函数内部可以通过指针操作来访问整个数组。在 C++ 中,数组作为函数参数有两种传递方式:传递指针和传递引用。

2023-12-05 14:14:11 1440

原创 C++用字符串输出枚举类型

来将枚举值转换为相应的字符串。函数将枚举值转换为字符串类型,然后使用。在这个例子中,我们定义了一个。枚举类型,并声明了一个函数。

2023-12-04 20:07:10 907

原创 C++:统计一个txt文件中各种字符出现的次数

/ 替换为你要统计的txt文件路径。std::cout << "无法打开文件" << std::endl;if (std::isalpha(c)) { // 只统计字母字符。// 输出字符及其出现次数。

2023-12-04 16:47:07 887

原创 +=与=+

"i = +3" 是一种赋值操作,将正号 "+" 和数值 3 赋给变量 i。所以,"i = +3" 等价于 "i = 3"。无论 i 的初始值如何,执行 "i = +3" 或 "i = 3" 都会将 i 的值设置为 3。它等价于 "i = i + 3"。例如,如果 i 的初始值为 5,则执行 "i += 3" 后,i 的值将变为 8。而 "=+" 并不是一个有效的运算符,因此 "i =+ 3" 是非法的语法。在C++中,"i += 3" 和 "i = +3" 也是两种不同的语法结构,具有不同的含义。

2023-12-04 15:45:53 382

原创 数据类型转换

逻辑运算符要求参与运算的数据类型bool类型,如果不是,0转化为false,1转化为true;转化的基本原则是:精度较低、范围较小的类型转换为精度较高、范围较大的类型。对于同一精度的有符号数和无符号数来说,有符号数向无符号数转变。=如果左右两边类型不一样,自动将右边的操作数类型转化为左边的;强制类型转换运算符 static_cast。static_cast<类型名>(表达式)(char)97代表的是字符a;分为隐式类型转化和强制类型转换。or 表达式(数据类型名)(数据类型名)表达式。

2023-12-04 15:40:34 369

原创 子网掩码(非详细介绍)

子网掩码的作用是将一个IP地址分为两部分,一部分用于标识该IP地址所在的子网,另一部分用于标识该IP地址所在的主机。具体来说,子网掩码中的1表示该位用于标识子网,0表示该位用于标识主机。例如,子网掩码为255.255.255.0的IP地址,前24位(即前3个字节)用于表示子网,后8位(即最后1个字节)用于表示主机。子网掩码(Subnet Mask)是一个32位的二进制数,用于指示一个IP地址中哪些位用于表示该IP地址所在的子网,哪些位用于表示该IP地址所在的主机。

2023-12-04 15:26:15 330

原创 最低字节(不详细介绍)

内存中的最低字节:在计算机内存中,多字节数据(如整数或浮点数)的存储通常是以字节为单位进行的。最低字节指的是存储在最低地址上的字节。数据传输中的最低字节:在网络传输或文件存储中,数据通常以字节流的形式传输。例如,在十六进制数 0x12345678 的字节流表示中,最低字节为 78。寄存器中的最低字节:在计算机的寄存器中,数据可能会分成多个字节进行存储。最低字节指的是寄存器中的最右边的字节。要选出一个十六进制数的最低字节,可以直接取该十六进制数的最右边两位(或者一个字节的长度,根据具体情况而定)。

2023-12-04 09:26:56 589

原创 二进制,八进制,十进制,十六进制的转化

首先,将十六进制数的每一位转换为对应的四位二进制数: 0 = 0000 3 = 0011 7 = 0111 6 = 0110。然后,将这些四位二进制数按顺序排列起来: 0376 的二进制表示为 0000001101110110。请注意,在进行进制转换时,数字0-9表示本身,而大于9的数则使用字母A-F表示,分别对应10-15。因此,十六进制值 0376 转换为二进制为 0000001101110110。将余数按相反顺序排列,得到二进制表示为 111。因此,十进制数 7 转换为二进制为 111。

2023-12-04 09:16:28 403

原创 C++指针函数练习

例子:利用指针函数完成一个数组的倒序排列.源数组由函数参数传递,倒序排序后的数组由指针函数返回.如果一个函数的返回值是指针,则称这样的函数为指针函数.

2023-11-24 17:26:59 375 1

原创 C++cstdlib库

是C++标准库中的头文件,提供了一些常用的函数和宏来进行通用的操作,例如处理字符串、类型转换、随机数生成等。//将生成的随机数去模100,将其范围限制到0到99。// 设置随机数生成器种子为当前时间。这些函数和宏提供了一些常用的功能,可以方便地在C++程序中使用。// 动态分配数组内存空间。通常,可以使用当前时间作为种子,例如。// 释放数组内存空间。

2023-11-24 16:33:42 1176 1

原创 C++srand函数

在这个示例程序中,我们首先使用time函数获取当前时间,并将其转换为无符号整数类型,然后将该值作为srand函数的参数传入,以初始化随机数生成器。一般来说,我们在程序中使用srand函数的常见做法是将当前时间作为种子,以确保每次程序运行时都会生成不同的随机数序列。需要注意的是,由于种子的变化会导致生成的随机数序列发生改变,所以在实际应用中,一般只需要在程序开始时调用srand函数一次即可,不需要在每次生成随机数之前都调用一次srand函数。其中,seed是一个无符号整数,作为随机数生成器的种子。

2023-11-24 16:17:35 2704 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除