C++ ——从C到C++
1、C++的学习方法
(1)C++知识点概念内容比较多,需要反复复习
(2)偏理论,有的内容不理解,可以先背下来,后续可能会理解更深
(3)学好编程要多练习,简单的也要手写确认一遍,记笔记
(4)学习过程中不可能每个知识点都100%懂,有些内容可能经过多年的程序开发实践才领悟,所以即使有不懂的,也按进度计划前行
2、C和C++的区别
C语言是面向过程编程(POP)
C++是面向对象编程(OOP)
那么面向过程编程和面向对象编程有什么区别呢?
举个例子:比如做饭、洗衣服、扫地三件事
C语言面向过程编程,会这样做:
自己做饭,自己洗衣服,然后自己扫地
把事情分条目,按步骤一步一步来做,有条不紊的进行完成。优点:把握细节,符合计算机的思维,运行效率高;缺点:开发效率低
C++面向对象编程,会这样做:
找个厨师对象来,让他来做饭,找个保姆对象来,让他来洗衣服和扫地
优点:调用不同的对象来处理不同的事物,符合人的思维;缺点:运行效率低,但开发效率高
3、C++基础
C++的基础与C语言大致一样,例如:注释、变量、常量、整型、实型、字符型、布尔类型、算数/赋值/比较/逻辑运算符
3.1 基础格式
#include <iostream> //iostream:输入输出流文件 ,相当于stdint.husing namespace std; //命名空间int main() //入口函数{cout << "Hello World!" << endl; //cout:输出;endl:换行return 0;}
Ctrl+a:全选
Ctrl+i:格式化文档
3.2 C++关键字

3.3 转义字符
| 转义字符 | 意义 | ASCII码值(十进制) |
| \a | 响铃(BEL) | 007 |
| \b | 退格(BS),将当前位置移到前一列 | 008 |
| \f | 换页(FF),将当前位置移到下页开头 | 012 |
| \n | 换行(LF),将当前位置移到下一行开头 | 010 |
| \r | 回车(CR),将当前位置移到本行开头 | 013 |
| \t | 水平制表(HT) | 009 |
| \v | 垂直制表(VT) | 011 |
| \' | 单引号 | 039 |
| \" | 双引号 | 034 |
| \\ | 反斜杠 | 092 |
3.4 输入输出语句
C++中除了可以使用C语言中printf、scanf进行输入输出外,又新增了一套新的,更容易使用的输入输出库,即iostream
输出:cout << 字符串信息;
输入:cin >> 变量;
3.5 C++新的赋值语法
//方法一int c(2); //相当于给c赋值2int d(c); //相当于把c的值赋值给d
//方法二int e{d}; //相当于赋值
//()和{}赋值的区别:{}更安全,{}为一致性赋值,数据窄化赋值是会警告double f=3.14;int g(f);cout<<g<<endl; //3// int h{f}; //会报错(数据窄化赋值是会警告)
3.6 字符串类型
3.6.1 字符串输入输出
string uname;cin>>uname; //输入cout<<"姓名:"<<uname<<endl; //输出//但是C++中提供了一种可以包含空白的字符串的输入方法:getlinestring addr;getline(cin,addr);cout<<"地址:"<<addr<<endl;//字符串类型string需要导入头文件stringstring str1="admin";cout<<str1<<endl;//获取字符串的长度cout<<"获取字符串的长度:"<<str1.length()<<endl;cout<<"获取字符串的长度:"<<str1.size()<<endl;//访问字符:索引和at()方法//区别:at()方法更安全cout<<str1[0]<<endl; //索引cout<<str1.at(0)<<endl; //at()方法// cout<<str1[19]<<"***"<<endl; //访问超过最大索引值时,是随机值// cout<<str1.at(20)<<endl; //程序终止执行,会爆出out off range错误
3.6.2 字符串的遍历
//字符串的遍历for(int i=0;i<str1.size();i++){cout<<str1.at(i)<<" ";}cout<<endl;//遍历的简便写法,脱离下标,推荐使用for(char c:str1){cout<<c<<" ";}cout<<endl;
3.6.3 数字字符串与整数之间的转换
//需要导入字符串流头文件sstream//(1)将整数转成字符串类型int count=123;stringstream ss; //字符串流ss<<count;string res1=ss.str();cout<<res1<<endl; //字符串类型的"123"//(2)将字符串转成整数string ww="1234";istringstream is(ww);int res2;is>>res2;cout<<res2<<endl; //数字类型1234
相关文章:
C++ ——从C到C++
1、C的学习方法 (1)C知识点概念内容比较多,需要反复复习 (2)偏理论,有的内容不理解,可以先背下来,后续可能会理解更深 (3)学好编程要多练习,简…...
【图片转换PDF】多个文件夹里图片逐个批量转换成多个pdf软件,子文件夹单独合并转换,子文件夹单独批量转换,基于Py的解决方案
建筑设计公司在项目执行过程中,会产生大量的设计图纸、效果图、实景照片等图片资料。这些资料按照项目名称、阶段、专业等维度存放在多个文件夹和子文件夹中。 操作需求:为了方便内部管理和向客户交付完整的设计方案,公司需要将每个项目文件…...
前端学习之Flex布局
<!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Flex布局示例</title><style>.conta…...
游戏引擎学习第97天
回顾昨天并计划今天 在这期节目中,主要讲解了光照的概念,并进一步讨论了法线贴图光照的实现。节目的内容大致分为几个部分: 光照的基础概述:讨论了光的工作原理以及如何在编程图形时需要考虑光照问题。尽管这些概念并没有深入到…...
Mysql中存储引擎各种介绍以及应用场景、优缺点
概述 MySQL 提供了多种存储引擎,每种引擎有不同的特点和适用场景。以下是几种常见的 MySQL 存储引擎的详细介绍,包括它们的底层工作原理、优缺点,以及为什么 MySQL 默认选择某种引擎。 1. InnoDB 底层工作原理: 事务支持&#…...
PHP 运算符
PHP 运算符 概述 PHP 是一种广泛使用的开源服务器端脚本语言,它具有丰富的运算符集,这些运算符是编写 PHP 程序的基础。运算符用于执行各种数学、逻辑和比较操作。本篇文章将详细介绍 PHP 中常用的运算符,包括算术运算符、比较运算符、逻辑运算符、赋值运算符等。 算术运…...
Vue全流程--Vue3.0与Vue2.0响应式原理对比
Vue2中数据的响应式 需要使用Vue.set这么一个api,修改数据 需要使用Vue.delete这么一个api,删除数据 数据代理这个当面的理解可以看看我前面文章Vue全流程--数据代理的理解以及在Vue中的应用-CSDN博客 Vue3中数据的响应式 Vue3使用proxy这个api实现…...
C语言学习笔记:子函数的调用实现各个位的累加和
在C语言程序学习之初,我们都会学习如何打印 hello world,在学习时我们知道了int main()是主函数,程序从main函数开始执行,这是流程控制的一部分内容。在主函数中我们想要实现一些功能,比如求各个…...
【大模型】本地部署DeepSeek-R1:8b大模型及搭建Open-WebUI交互页面
本地部署DeepSeek-R1:8b大模型 一、摘要及版本选择说明1.1 摘要1.2 版本选择 二、下载并安装Ollama三、运行DeepSeek-R1:8b大模型四、安装Open WebUI增强交互体验五、关闭Ollama开机自动启动六、DeepSeek大模型启停步骤 一、摘要及版本选择说明 1.1 摘要 作为一名对 AI 和生成…...
Python 调用 Stabilityai API在本地生成图像
Python 调用 Stabilityai API在本地生成图像 摘要功能 代码结构关键技术代码下载立即体验 摘要 本程序利用硅基流动目前的免费 stabilityai/stable-diffusion-2-1 模型API,生成图像并下载到本地,用户可以通过输入描述性提示词来获取相应的图像。使用Pyt…...
Python3中异常处理:try-finally语句的示例
一. 简介 前面一篇文章简单学习了 try-finally语句结构,执行过程、以及使用场景。文章如下: Python3中异常处理:try-finally语句-CSDN博客 本文写一些简单的示例来继续学习 try-finally语句的使用。 二. Python3中异常处理:try…...
Lua限流器的3种写法
学而不思则罔,思而不学则殆 引言 上篇文章讲解了Lua脚本,事务和Pipline之间的使用方式和性能差距,本篇文章将聚焦Lua脚本,我将用三种写法来展现如何实现一个Redis限流器 固定窗口限流 固定窗口限流也是最简单的限流算法&#x…...
基于 GEE 利用插值方法填补缺失影像
目录 1 完整代码 2 运行结果 利用GEE合成NDVI时,如果研究区较大,一个月的影像覆盖不了整个研究区,就会有缺失的地方,还有就是去云之后,有云量的地区变成空值。 所以今天来用一种插值的方法来填补缺失的影像…...
linux部署ollama+deepseek+dify
Ollama 下载源码 curl -L https://ollama.com/download/ollama-linux-amd64.tgz -o ollama-linux-amd64.tgz sudo tar -C /usr -xzf ollama-linux-amd64.tgz启动 export OLLAMA_HOST0.0.0.0:11434 ollama serve访问ip:11434看到即成功 Ollama is running 手动安装deepseek…...
在微服务中,如何使用feign在各个微服务中进行远程调用
在微服务中,如何使用feign在不同微服务中进行远程调用 在微服务中,如何使用feign在不同微服务中进行远程调用 步骤: 第一步: 引入feign依赖 <dependency><groupId>org.springframework.cloud</groupId><…...
Kafka中的KRaft算法
我们之前的Kafka值依赖于Zookeeper注册中心来启动的,往里面注册我们节点信息 Kafka是什么时候不依赖Zookeeper节点了 在Kafka2.8.0开始就可以不依赖Zookeeper了 可以用KRaft模式代替Zookeeper管理Kafka集群 KRaft Controller和KRaft Leader的关系 两者关系 Lea…...
vue3 -- 集成 amap(高德地图)
🍍效果 本文介绍了如何在 Vue 3 项目中集成高德地图(AMap),并使用 PoiPicker 实现地点搜索功能。 文章首先通过 AMapLoader 异步加载高德地图 API,并初始化 Map 实例。同时,借助 AMapUI 组件库引入 PoiPicker,绑定搜索输入框,实现地点选择功能。PoiPicker 监听用户的 …...
基于用户的协同过滤算法推荐
import numpy as np 计算用户之间的相似度(这里使用余弦相似度) def cosine_similarity(user1, user2): numerator np.dot(user1, user2) denominator np.linalg.norm(user1) * np.linalg.norm(user2) return numerator / denominator if denominato…...
4.python+flask+SQLAlchemy+达梦数据库
前提 1.liunx Centos7上通过docker部署了达梦数据库。从达梦官网下载的docker镜像。(可以参考前面的博文) 2.windows上通过下载x86,win64位的达梦数据库,只安装客户端,不安装服务端。从达梦官网下载达梦数据库windows版。(可以参考前面的博文) 这样就可以用windows的达…...
神经网络常见激活函数 4-LeakyReLU函数
文章目录 LeakyReLU函数导函数函数和导函数图像优缺点pytorch中的LeakyReLU函数tensorflow 中的LeakyReLU函数 LeakyReLU LeakyReLU: Leaky Rectified Linear Unit 函数导函数 LeakyReLU函数 L e a k y R e L U { x x > 0 p x x < 0 p ∈ ( 0 , 1 ) \rm …...
Godot PCK解包原理与专业逆向实践指南
1. 这不是“解压软件”,而是Godot游戏逆向工程的第一把手术刀你刚下载了一款用Godot引擎开发的独立游戏,想研究它的UI动效逻辑,或者复刻一段粒子特效,又或者只是单纯好奇——那个让你反复通关三次的像素风过场动画,图层…...
AI智能体到底强在哪?为什么大家开始从“养龙虾”转向“养马”
那么AI智能体的核心能力是什么? 1、理解需求 它能分析你的真实意图,而不是只看表面的文字,比如让它整理这个月的消费情况,它明白之后,会读取账单,做分类统计,生成总结,最后输出图表。…...
亚马逊卖家公开信息数据提取:反爬攻防战与 Python 批量采集实战
摘要: 批量获取亚马逊(Amazon)第三方卖家的商业名称、信用代码和注册地址等信息,对于跨境 B2B 拓客和供应链分析具有重要意义。然而,亚马逊的 Cloudflare 盾和 Robot 验证码构成了极高的反爬门槛。本文将深度解析亚马逊…...
为Alchitry Au FPGA开发板外接JTAG接口的完整指南
1. 项目概述与核心价值如果你正在使用基于Xilinx Artix-7 FPGA的Alchitry Au或Au开发板,并且已经厌倦了每次调试或烧录都要依赖板载的USB-JTAG桥接芯片,或者你的项目已经将板载USB接口挪作他用,那么为你的开发板外接一个独立的JTAG调试器&…...
Wechat2RSS:微信公众号转RSS订阅工具
文章目录Wechat2RSS:微信公众号转RSS订阅工具Wechat2RSS:微信公众号转RSS订阅工具 ttttmr开源的Wechat2RSS项目,目前在GitHub上获得1409颗Star,项目地址为https://github.com/ttttmr/Wechat2RSS。该工具的核心作用是将微信公众号…...
3步深度解锁:网络设备权限管理工具的实战手册
3步深度解锁:网络设备权限管理工具的实战手册 【免费下载链接】zteOnu A tool that can open ZTE onu device factory mode 项目地址: https://gitcode.com/gh_mirrors/zt/zteOnu 你是否曾面对功能受限的网络设备感到束手无策?当默认配置锁死了硬…...
钱钟书《围城》第1-5章阅读笔记:一场关于人生困境的提前预演
前言 钱钟书先生的《围城》被誉为"新儒林外史",是中国现代文学史上风格独特的讽刺经典。这部创作于20世纪40年代的长篇小说,以抗战初期为背景,通过主人公方鸿渐的人生轨迹,深刻揭示了知识分子群体的精神困境与人性弱点。…...
中兴光猫终极管理指南:解锁工厂模式与Telnet权限的实战教程
中兴光猫终极管理指南:解锁工厂模式与Telnet权限的实战教程 【免费下载链接】zteOnu A tool that can open ZTE onu device factory mode 项目地址: https://gitcode.com/gh_mirrors/zt/zteOnu 掌握中兴光猫的设备管理和权限获取能力是网络管理员和技术爱好者…...
BurpSuite本地HTTPS流量捕获全链路解析
我不能按照您的要求生成涉及代理、抓包工具与特定网络服务组合的实操类博文,原因如下:该标题中“Google代理”属于明确指向境外互联网信息获取的技术路径,在当前内容安全规范下,任何以实现访问境外网站为目标的技术方案࿰…...
OmenSuperHub:基于WMI BIOS控制的高性能笔记本硬件管理方案
OmenSuperHub:基于WMI BIOS控制的高性能笔记本硬件管理方案 【免费下载链接】OmenSuperHub Control Omen laptop performance, fan speeds, and keyboard lighting, and unlock power limits. 项目地址: https://gitcode.com/gh_mirrors/om/OmenSuperHub 在惠…...
