C++学习笔记
小甲鱼学习课程
02
#include <iostream>
头文件 iostream io+stream 翻译为IO流 输入输出流
using namespace std; 引入命名空间
c++标准库所使用的所有标识符都是在同一个特殊的名字空间std中来定义的;
偷懒使用这句话;
std::cout <<"第一个int元素结果是:" << data[0]<<endl;
std::cout 可以直接使用 cout 代替
endl 结束输出流,没有这个就会一直流出;
cout输出流例子
#include <iostream>
using namespace std;
int main()
{int data[] = {99,1,2,3,4,5};int size = sizeof(data) / sizeof(data[0]);std::cout <<"第一个int元素结果是:" << data[0]<<endl;
}
03
cin输入流
配合>> 就是已经重载,重载类似于替代原有含义,替代了右移,变成了提取信息;
提取输入流的时候,提取正确的类型返回true,否则falsh;
如int i;
cin>>i,提取到3.14小数点,就返回falsh,因为i是int类型;但是可以提取到3;
可以提取字符串、int、float、double类型
cin.peek();检查当前流的字符
cin.get();读取流的下一个字符
#include <iostream>
using namespace std;
int main()
{int i,sum=0;while (cin>>i){sum += i;while (cin.peek() == ' ')//如果为空格,一直获取空格{cin.get();}if (cin.peek() == '\n'){break;}}std::cout << sum;
}
cin.ignore(n);//忽略 n个字符
cin.ignore(n,‘ x’);//忽略 n个字符,n个字符以内遇到x就结束忽略
cin.getline(buf, n);//保存n个字符到buf
int main()
{char buf[20];cin.ignore(7);//忽略 7个字符cin.getline(buf, 10);//保存10个字符std::cout << buf<<endl;
}
cin.read(buf,10);//读取10个字符到buf
cin.gcount() //返回输入流的字符计数值
int main()
{char buf[20];cin.read(buf,10);//读取10个字符到bufstd::cout << cin.gcount() << endl;//输出输入流的字符计数
}
04
在工程下面新建一个123.txt文本
文件输出流
ofstream out;//流出到文件
out.open("123.txt"); 这个流指定文本,加载到程序内存
out.close(); 关闭 这个流指定文本
#include <iostream>
#include<fstream>//文件数据流
using namespace std;
int main()
{ofstream out;//输出文件数据流out.open("123.txt");//输出流;打开文件,文件流指向这个文件if (!out){cerr << "打开文件失败" << endl;return 0;}for(int i=0;i<10;i++){out << i;//文件输出流,流入指定位置}out << endl;//停止流out.close();//关闭文件输出流std::cout << "Hello World!\n";
}
ifstream in; 输入文件流对象;用来流入到文件
in.open("123.txt");//输入文件流,这个流指定文本,从这个文件流入,加载到程序内存
if ( !in ) 如果打开文件失败返回false
#include <iostream>
#include<fstream>
using namespace std;
int main()
{ifstream in;//输入文件流in.open("123.txt");//输入文件流,指定文本,从这个文件流入if (!in){cout << "打开文件失败" << endl;return 0;}char i;while (in>>i)//文件流入给字符i{cout << i;//}in.close();//关闭这个流的文本std::cout << "Hello World!\n";
}
ifstream in("123.txt"); 也可以构建对象的时候直接打开文件,指定流文件
ofstream out("123.txt");
fstream in("123.txt",int open_mode);//二参数打开
//open_mode 可以如下
ios::in;//打开一个可读文件
ios::out;//打开一个可写文件
ios::binary;//以二进制的形式打开一个文件
ios::app;//写入的所有数据将被追加到文件的末尾
ios::trunc;//删除文件原来已经存在的内容
ios::_Nocreate;//如果要打开的文件不存在,那么以此参数调用open函数将无法进行
ios::_Noreplace;//如果要打开的文件已存在,试图用open打开时返回错误在c++库中如下:所以可以多种模式用 并运算符使用
static constexpr _Openmode in = static_cast<_Openmode>(0x01);static constexpr _Openmode out = static_cast<_Openmode>(0x02);static constexpr _Openmode ate = static_cast<_Openmode>(0x04);static constexpr _Openmode app = static_cast<_Openmode>(0x08);static constexpr _Openmode trunc = static_cast<_Openmode>(0x10);static constexpr _Openmode _Nocreate = static_cast<_Openmode>(0x40);static constexpr _Openmode _Noreplace = static_cast<_Openmode>(0x80);static constexpr _Openmode binary = static_cast<_Openmode>(0x20);
fstream fp("123.txt",ios::in|ios::out);文件流对象,输入输出流模式,指定文件
fp.seekg( ) 文件定位
#include <iostream>
#include<fstream>
using namespace std;/*
seekg是对输入文件定位,它有两个参数:第一个参数是偏移量,第二个参数是基地址。
ios::end是代表流的结尾,0代表偏移量。f.seekg(0, ios::end);意思是直接跳到当前流的结尾,略过流内的所有数据*/
int main()
{fstream fp("123.txt",ios::in|ios::out);//if (!fp){cerr << "打开文件失败" << endl;}fp << "145a4da4dsd1435";//流出到文件static char str[30];fp.seekg(ios::beg); //ios::end; 流文件结尾fp >> str;//流入到数组cout << str << endl;fp.close();return 0;
}
05输入输出总结
1
#include <iostream>int main()
{char answer;std::cout << "请问可以格式化您的硬盘吗?【Y/N】" << "\n";std::cin >> answer;//缓冲区里面:一个是输入字符,和回车switch (answer){case 'y':case 'Y':std::cout << "格式化了\n";break;case 'n':case 'N':std::cout << "不会格式化\n";break;default:std::cout << "输入错误\n";break;}std::cin.ignore(10,'\n');//忽略10个字符,直到10个字符内存在回车 ;为了忽略那个输入回车std::cin.get();//等待输入结束std::cout << "Hello World!\n";
}
//输入检测函数
std::cin.eof();//输入到文件的末尾返回true
std::cin.fail();//如果cin无法工作,返回true
std::cin.bad();//如果cin因为比较严重的原因而无法工作,返回true
补充:
cin.clear()//清除标示符
重置错误标识符:当输入操作失败时,例如输入了一个非法的字符,cin会设置错误标识符。此时,可以使用cin.clear()来重置这些标识符,使其回到无错误状态
06:函数的重载
定义:同样的名字再定义一个有着不同参数但是有着同样用途的函数;
参数个数上的不同,也可以是参数类型的不同;
只能通过不同的参数重载,不能通过返回值重载
void sum_add_100();//重载如下
#include <iostream>
void sum_add_100(double a);
void sum_add_100(int a);
int main()
{double z = 0;int b = 0;std::cout << "请输入double型";std::cin >> z;std::cin.ignore(10, '\n');sum_add_100(z);std::cout << "请输入int型";std::cin >> b;std::cin.ignore(10, '\n');sum_add_100(b);std::cout << "Hello World!\n";}void sum_add_100(double a)
{a += 100;std::cout << a<<'\n';
}
void sum_add_100(int a)
{a += 100;std::cout << a << '\n';}
数组类型
指针类型
结构类型
7-9数组类型
数组类型:和c语言一样;
字符串类型:本质也是字符存在数组;但是c++使用不一样
std::string str;//构建字符串对象
std::getline(std::cin,str);//获取行,用cin的方式,获取到字符串对象
#include <iostream>
#include<string>
int main()
{std::string str;//构建字符串对象std::cout << "请输入一串字符: \n";// std::cin >> str;std::getline(std::cin,str);std::cout << str<<'\n';std::cout << "Hello World!\n";
}
获取子串
std::string str = "Hello, World!";
std::string subStr1 = str.substr(7, 5);//获取子串(起始字节,长度 );指定位置
比较字符串
直接用比较运算符,比较两个字符串对象,按字符串靠前的优先比较;
ac比较ab 前面a都相等 第二个字节c大 所以ac大ab
str1 ==str2
str 1!=str2
添加字符串
str1.append("xxx ")//可以多级引用append
搜索字符串
str.find(子串)// 返回搜索到到起始索引
#include <iostream>
#include<string>
int main()
{std::string str;//构建字符串对象std::cout << "请输入一串字符: \n";// std::cin >> str;std::getline(std::cin,str);std::cout << str<<'\n';std::cout << "Hello World!\n";std::string str1="aaa bbb ccc";std::string str2 = "ccc";std::string str3 = "aaa bbb ccc";std::string st= str1.substr(3,6);//提取第三个元素开始的后6个元素std::cout <<"主串为:"<<str1 << "字串为:" << st<<'\n';if (str1> str2)//比靠前的字符大小{std::cout << str1 << "最大\n";}else{std::cout << str2 << "最大\n";}str3.append("123456");//拼接字符串std::cout << str3;uint16_t t=str1.find(str2);//返回索引值std::cout <<'\n' << t;
}
指针类型08
取地址和c语言一样
int a;
&a;
对齐也是c语言一样,32位系统4字节对齐
指针声明和c语言一样
地址使用和c语言一样 int a ;int *p=&a;必须同类: 形参使用也是一样;
#include <iostream>int main()
{int a = 1;double b = 2;float c = 3;char d = 4;int *p1 = &a;double *p2 = &b;float *p3 = &c ;char *p4 = &d;std::cout << a<<'\n';std::cout << b << '\n';std::cout << c << '\n';std::cout << d << '\n';*p1 = 5;*p2 = 6;*p3 = 7;*p4 = 8;std::cout << p1 << '\n';std::cout << p2 << '\n';std::cout << p3 << '\n';std::cout << p4 << '\n';std::cout << "Hello World!\n";
}
c++的地址++和c一样;
指针的地址++,指向下一个同类型的数据;
int a【10】 ;
int *p=a;
p++;此时p=&a【1】;
指针++的不是地址+1,而是偏移sizeof(int)个字节偏移量;
10
结构和c的结构体是一样使用的,包括结构指针
11、
形参使用,地址传递,和c一样。
引用特别说明
void aaa ( int * ,int * )
{ }
在c++中引用是这样的
int a,b;
aaa ( a ,b );
其实传递进去给形参的是地址,等效aaa ( &a ,&b );
13联合体、结构体、类型别名
和c语言一样使用,不做描述
struct MyStruct//结构体
{int a;double b;char c;
};
union MyUnion//联合体
{int a;double b;
};
typedef int uint32;//类型别名
相关文章:
C++学习笔记
小甲鱼学习课程 02 #include <iostream> 头文件 iostream iostream 翻译为IO流 输入输出流 using namespace std; 引入命名空间 c标准库所使用的所有标识符都是在同一个特殊的名字空间std中来定义的; 偷懒使用这句话; std::cout <…...
伺服控制电机多大功率合适?
随着现代工业自动化的发展,伺服控制电机在各个行业的应用愈加广泛。伺服电机以其精确的控制、高效的运行和高响应速度,成为许多机械设备中不可或缺的组成部分。然而,在选择伺服电机时,确定其功率大小是一个关键环节。那么…...
《OpenCV 基础全攻略:从入门到精通》
《OpenCV 基础全攻略:从入门到精通》 一、OpenCV 简介(一)特点(二)优势(三)应用场景 二、安装与配置三、OpenCV 函数详解1. 图像读取函数 cv2.imread ()2. 图像显示函数 cv2.imshow ()3. 图像保…...
spring ai如何使用function call调用第三方模型
这里写自定义目录标题 背景什么是function call怎么用function call?总结 背景 一直困惑于ai是如何使用插件或者其他一些功能的,后来发现,很多大模型都支持function call功能,如何让大模型能够联网查询呢,function ca…...
2024 数学建模国一经验分享
2024 数学建模国一经验分享 背景:武汉某211,专业:计算机科学 心血来潮,就从学习和组队两个方面指点下后来者,帮新人避坑吧 2024年我在数学建模比赛中获得了国一(教练说论文的分数是湖北省B组第一࿰…...
javaweb-Mybaits
1.Mybaits入门 (1)介绍 (2) 2.Mybaits VS JDBC 3.数据库连接池 (1)SpringBoot默认连接池为hikari,切换为Druid有两种方式 方式一:加依赖 方式二:直接修改配置文件 …...
108.【C语言】数据结构之二叉树查找值为x的节点
目录 1.题目 代码模板 2.分析 分类讨论各种情况 大概的框架 关键部分(继续递归)的详解 递归调用展开图 3.测试结果 其他写法 4.结论 5.注意事项 不推荐的写法 1.题目 查找值为x的节点并返回节点的地址 代码模板 typedef int BTDataType; typedef struct BinaryT…...
Ant-Design-Vue 全屏下拉日期框无法显示,能显示后小屏又位置错乱
问题1:在全屏后 日期选择器的下拉框无法显示。 解决:在Ant-Design-Vue的文档中,很多含下拉框的组件都有一个属性 getPopupContainer可以用来指定弹出层的挂载节点。 在该组件上加上 getPopupContainer 属性,给挂载到最外层盒子上。 <temp…...
sec啥意思
sec的基本含义是秒,是时间的基本单位之一;在数学中表示正割函数;在计算机科学中有时指安全;在法语中意为干的等。 sec的多重含义与应用 sec在数学中的定义 在数学领域,尤其是三角学中,sec代表正割函数&a…...
云计算vspere 安装过程
1 材料的准备 1 安装虚拟机 vmware workstation 2 安装esxi 主机 3 在esxi 主机上安装windows 2018 dns 服务器 4 在虚拟机上安装windows 2018 服务器 6 安装vcenter 5 登入界面测试 这里讲一下,由于部署vspere 需要在windows 2012 服务器上部…...
spring-boot打包前重新拉取maven依赖
在使用 Maven 构建 Spring Boot 项目时,如果希望在每次打包时都强制拉取依赖,可以通过以下方法实现。 方法一:在命令行强制更新依赖 在执行 mvn package 或 mvn install 等命令时,添加 -U 参数: mvn clean package -…...
华为云域名网站,域名切换到Cloudflare CDN出现访问报错:DNS 重定向次过多
网站域名切换到Cloudflare出现访问报错:重定向次过多,应该如何处理? 最近我自己已经遇到很多次这个情况了,将网站域名DNS切换到Cloudflare之后,网站会打不开,出现重定向次数过多报错。 网站域名切换到Clo…...
浔川AI翻译v5.1.0版本正式亮相!
浔川 AI 翻译 v5.1.0 版本正式亮相! 在科技浪潮汹涌澎湃的今天,浔川 AI 翻译以其卓越的技术实力和对用户需求的精准把握,自豪地向全球用户宣布:浔川 AI 翻译 v5.1.0 版本正式闪耀登场!这一全新版本在继承以往优势的基础…...
Merkle 树 应用在 代码工程
将 Merkle 树 应用在 代码工程 中,尤其是在大型项目中,可以帮助管理和验证代码的完整性、追踪代码变更、提高版本控制的效率等。通过将代码文件、类、函数等结构映射到 Merkle 树中,我们可以高效地验证代码库的任何变更,确保每个部…...
如何将表中存储的 JSON 数据转换为新表
如何将表中存储的 JSON 数据转换为新表 引言 本文介绍如何使用 PostgreSQL 的 JSON 函数,将 log_table 表中的 param_json 字段(存储为 JSON 数组)转换为一张新的表,并提取出具体的字段值。 表结构说明 假设 log_table 表的结…...
鸿蒙开发——使用ArkTs处理XML文本
1、概 述 XML(可扩展标记语言)是一种用于描述数据的标记语言,旨在提供一种通用的方式来传输和存储数据,特别是Web应用程序中经常使用的数据。XML并不预定义标记。因此,XML更加灵活,并且可以适用于广泛的应…...
借助vector实现进制转换详解
进制转换,没什么可说的,大一级别的水平,不过在某些考研题目中可能会涉及到顺序栈的实现,本贴不使用顺序栈,用STL里面的vector模拟一下:关键在于想清楚【除留取余】的逻辑,至于用什么结构存放中间…...
混合云策略在安全领域受到青睐
Genetec 发布了《2025 年物理安全状况报告》,该报告根据超过 5,600 名该领域领导者(其中包括 100 多名来自澳大利亚和新西兰的领导者)的回应,揭示了物理安全运营的趋势。 报告发现,澳大利亚和新西兰的组织采用混合云策…...
Jackson - 序列化和反序列化Java集合对象
在本文中,我将向您展示如何使用Jackson API来序列化和反序列化Java集合对象,如List、Set和Map。 我们将通过具体的示例演示如何利用ObjectMapper类的方法进行这些操作。 主要内容 添加Maven依赖项使用Jackson API进行List序列化使用Jackson API进行Se…...
No.26 笔记 | 信息收集与工具实践指南
渗透测试的第一步:信息收集背后的“侦察艺术” 在网络安全的世界里,信息就是武器。 无论是追踪隐藏的漏洞,还是找到不被注意的入口,信息收集就像一场现代化的“谍战片”。而作为渗透测试的开场白,信息收集不仅考验技…...
使用倒排索引法解决分库分表后查询问题
数据进行了分库分表后,要查询某一条数据的信息,事先是不清楚该条数据在哪台服务器上的,这时候可以使用倒排索引法,将数据的关键信息存储到Redis中,然后从Redis中获取到数据所在的服务器信息和数据ID。 Redis倒排索引示…...
Linux操作系统--文件的重定向以及文件缓冲区
目录 前言 一、文件描述符的分配规则 二、重定向 三、系统中的重定向接口 1、dup2()介绍 2、dup2()使用 1)输出重定向和追加重定向 2)输入重定向 四、文件缓冲区 1、定义 2、缓冲区刷新的条件 1)文件缓冲区存在的意义 2&…...
Linux 远程连接服务
远程连接服务器简介 什么是远程连接服务器 远程连接服务器通过文字或图形接口方式来远程登录系统,让你在远程终端前登录linux主机以取得可操 作主机接口(shell),而登录后的操作感觉就像是坐在系统前面一样。 远程连接服务器的功…...
Chrome控制台 网站性能优化指标一览
打开chrome-》f12/右键查看元素-》NetWrok/网络 ctrlF5 刷新网页,可以看到从输入url到页面资源请求并加载网页,用于查看资源加载,接口请求,评估网页、网站性能等,如下图: request、stransferred、resour…...
【SpringBoot】使用IDEA创建SpringBoot项目
1、使用SpringBoot脚手架创建 我们使用SpringBoot的脚手架Spring Initializr创建,如图所示: 2、选择SpringBoot版本 最开始做项目时候,组长说创建一个 springboot 2.5.4 的项目,mysql使用 5.6.X ,maven使用是3.6.X…...
Mysql锁
锁的分类 基于锁的属性分类:共享锁、排它锁。基于锁的粒度分类:表锁、行锁、记录锁、间隙锁、临键锁。基于锁的状态分类:意向共享锁、意向排它锁。 排他锁与任何的锁都不兼容,共享锁仅和共享锁兼容。由于MVCC的存在,…...
深入浅出:PHP中的数据类型全解析
文章目录 引言理解数据类型标量类型整数 (integer)浮点数 (float)布尔值 (boolean)字符串 (string) 复合类型数组 (array)对象 (object)资源 (resource)NULL 特殊类型Callable强制类型转换 实战案例总结与展望参考资料 引言 在编程的世界里,数据类型是构建任何应用…...
030.随机指纹chromium编译-修改windows操作系统版本
一、目标: 1.了解js是如何获取windows版本的。2.如何从c层面修改chromium源码,修改win系统版本 二、js是如何获取windows系统版本: 将下面的js复制到F12控制台 async function detectWindowsVersion() {let userAgent navigator.userAge…...
IP 协议
IP协议 一、介绍1、IP协议2、IPv43、IPv6 二、主要功能三、协议格式1、示意图2、说明 四、网段划分1、介绍2、目的3、方法4、步骤 五、基于类别的IP地址分配方式1、示意图2、范围 六、CIDR1、介绍2、组成3、优点4、示意图 七、子网掩码1、介绍2、功能3、表示方法4、CIDR表示法5…...
【Docker】创建Docker并部署Web站点
要在服务器上创建Docker容器,并在其中部署站点,你可以按照以下步骤操作。我们将以Flask应用为例来说明如何完成这一过程。 1. 准备工作 确保你的服务器已经安装了Docker。如果没有,请根据官方文档安装: Docker 安装指南 2. 创…...
【C语言的奥秘9】数据类型总结
一、数据类型的介绍 数据类型是按被定义变量的性质,表示形式,占据存储空间的多少,构造特点来划分的。在C语言中,数据类型可分为:基本数据类型,构造数据类型,指针类型,空类型四大类。 基本数据类…...
EasyExcel注解使用
上接《Springboot下导入导出excel》,本篇详细介绍 EasyExcel 注解使用。 1. ExcelProperty value:指定写入的列头,如果不指定则使用成员变量的名字作为列头;如果要设置复杂的头,可以为value指定多个值orderÿ…...
什么是多模态和模态
文章目录 前言一、定义1. 模态 (Modal)2. 非模态 (Non-modal) 二、GUI中1. 模态(Modal)对话框2. 非模态(Modeless)对话框 三、模态 vs 非模态 的对比四、何时使用模态和非模态对话框?五、Qt 中 exec() 与 show() 的区别…...
【系统架构设计师】真题论文: 论NoSQL数据库技术及其应用(包括解题思路和素材)
更多内容请见: 备考系统架构设计师-专栏介绍和目录 文章目录 真题题目(2018年 试题4)解题思路论文素材参考真题题目(2018年 试题4) 随着互联网 web2.0 网站的兴起,传统关系数据库在应对 web2.0 网站,特别是超大规模和高并发的 web2.0 纯动态 SNS 网站上已经显得力不从心…...
TCP/IP 协议图--计算机网络体系结构分层
计算机网络体系结构分层 计算机网络体系结构分层 不难看出,TCP/IP 与 OSI 在分层模块上稍有区别。OSI 参考模型注重“通信协议必要的功能是什么”,而 TCP/IP 则更强调“在计算机上实现协议应该开发哪种程序”...
【Android】Intent类详解
目录 引言 一、Intent的定义 二、Intent的用途 三、Intent的七大属性 四、Intent的种类 4.1 显式Intent 4.2 隐式Intent 五、代码示例 5.1 activity_intent.xml 5.2 IntentActivity.java 5.3 AndroidManifest.xml 5.4 实现效果 结语 引言 Intent在Android开发…...
【LeetCode刷题之路】64.最小路径和 (动态规划入门)
LeetCode刷题记录 🌐 我的博客主页:iiiiiankor🎯 如果你觉得我的内容对你有帮助,不妨点个赞👍、留个评论✍,或者收藏⭐,让我们一起进步!📝 专栏系列:LeetCode…...
Facebook:筑牢隐私安全堡垒,守护社交净土
在全球社交媒体平台中,Facebook一直是风靡全球的佼佼者。然而,随着数字化信息的迅速膨胀,用户隐私保护的重要性日益凸显。面对用户对数据安全性的高度重视,Facebook致力于通过一系列措施来确保隐私保护,守护每位用户的…...
MongoDB 索引类型详解
MongoDB 索引类型详解 在 MongoDB 中,索引是提高查询效率、优化数据库性能的重要手段。MongoDB 支持多种类型的索引,每种索引类型适用于不同的查询需求和场景。本文将详细介绍 MongoDB 中几种常见的索引类型、示例及其限制。 1. 单字段索引(…...
国家信息中心单志广:智慧城市转型中的数据要素价值释放
今日,由中国电信集团主办的2024数字科技生态大会数据要素合作论坛在广州市举办。国家发改委国家信息中心信息化和产业发展部主任单志广在论坛发展主旨演讲:智慧城市转型中的数据要素价值释放,主要包括发展新形势、数据新要素、数据新产权、数…...
底层逻辑之:欧拉-拉格朗日方程(Euler-Lagrange equations)变分法(Calculus of Variations)的核心思想
0前言: 0.1 17世纪的泛函(Functional)分析与变分法(Calculus of Variations) 在17世纪,数学家们开始遇到一些需要处理函数集合的问题,这些问题涉及到函数的极值、曲线的长度、曲面的面积等。这…...
2024-12-03OpenCV图片处理基础
OpenCV图片处理基础 OpenCV的视频教学:https://www.bilibili.com/video/BV14P411D7MH 1-OpenCV摄像头读取 OpenCV使用摄像头读取图片帧,点击S保存当前帧到指定文件夹,点击Q关闭窗口,点击其他按钮打印按钮的值 要实现这个功能&…...
【汇编语言】标志寄存器(二) —— 标志位驱动的计算:ADC、SBB 和 CMP 的巧妙应用
前言 📌 汇编语言是很多相关课程(如数据结构、操作系统、微机原理)的重要基础。但仅仅从课程的角度出发就太片面了,其实学习汇编语言可以深入理解计算机底层工作原理,提升代码效率,尤其在嵌入式系统和性能优…...
Java刷题训练第一期
个人主页:手握风云 专栏:Java刷题训练营 1. 字符转ASCII码 问题描述:BoBo教KiKi字符常量或字符变量表示的字符在内存中以ASCII码形式存储。BoBo出了一个问题给KiKi,输入一个字符,输出该字符相应的ASCII码。 输入描述…...
【leetcode100】矩阵置零
1、题目描述 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用原地算法。 示例 1: 输入:matrix [[1,1,1],[1,0,1],[1,1,1]] 输出:[[1,0,1],[0,0,0],[1,0,1]] 2、初始思路 2…...
【MySQL 进阶之路】SQL 优化
6.SQL 性能分析笔记 在现代数据库的高并发环境下,SQL 查询优化成为提升系统性能和响应速度的关键。本文将总结常见的 SQL 优化策略,包括插入优化、主键设计、排序优化、GROUP BY 优化等,帮助你在面对大规模数据时,做到高效查询和…...
本地部署开源趣味艺术画板Paint Board结合内网穿透跨网络多设备在线绘画
文章目录 前言1.关于Paint Board2.本地部署paint-board3.使用Paint Board4.cpolar内网穿透工具安装5.创建远程连接公网地址6.固定Paint Board公网地址 前言 大家好,是不是每次想要在电脑上画画时,都被那些笨重的专业绘图软件搞得头大如斗呢?…...
位图(bitmap)和布隆过滤器(bloom_filter)
1.位图-Bitmap 1.1问题引入 :给40亿个不重复的无符号整数,没排过序。给一个无符号整数,如何快速判断一个数是否在这40亿个数中? 40亿个无符号整数大约16G的大小,用map或者set显然是无法支持海量数据的存储。那么我们能否不存储数…...
如何使用JDBC向数据库中插入日期数据???
在学习JDBC 的过程中很多小明有疑问在IDEA编辑器是如何插入一个日期类型的数据的,此篇一些方法希望可以帮助到你。 示例: import java.text.ParseException; import java.text.SimpleDateFormat; import java.sql.Date; import java.util.Scanner;publi…...
电子系统设计实验4 信号发生电路设计实验
一、实验目的 1. 掌握正弦信号发生器的设计方法。 2. 掌握方波发生器的设计方法。 二、实验内容及结果 1. 实验内容 设计一用于RFID读卡器测试的幅移键控发生器(ASK),其结构如图4-1所示。正弦振荡器输出频率为150kHz,幅度为3V…...