当前位置: 首页 > news >正文

C++快速入门

本章内容我将结合C语言一起,初步学习了解c++,与大家一起快速入门这门语言。当然鉴于c++本身属于一门中级语言,大家对编程有一定了解之后来学习这门知识会更加得心应手。

简介

C++ 被认为是一种中级语言,它综合了高级语言和低级语言的特点。

C++ 是由 Bjarne Stroustrup 于 1979 年在新泽西州美利山贝尔实验室开始设计开发的。C++ 进一步扩充和完善了 C 语言,最初命名为带类的C,后来在 1983 年更名为 C++。

这里的详细内容大家可以参考百度资料,我们就不去做过多的解释了。

提要

本章内容所有运行的代码基于vs,运行结果可能会与Linux有些区别,这里注意的是,代码本身是没有问题的,只是编译器本身的区别而导致结果的不同,如果大家想要运行结果一致,建议大家采用vs编译器。

运行Hello world

无论我们学习哪种语言运行的第一个代码就是“Hello world”,这是一个约定书陈的东西。

#include<iostream>
using namespace std;int main()
{cout << "Hello world" << endl;system("pause");return 0;
}

当然如果有一定的C语言基础我们也可以这样写。你可以用 "\n" 代替以上代码里的 endl

#include<iostream>
using namespace std;int main()
{cout << "Hello world" << "\n";system("pause");return 0;
}

运行结果为:

注释

我们在写代码过程中我们可能会遗忘某段代码的含义或者用法,就跟我们上课要做笔记是一个道理——避免忘记。

试想一下,如果我们一觉醒来就把昨天写了一晚上的代码给忘记了,看到这些代码就像一堆毫无意义的符号一样。为了避免悲剧发生,前辈们就发明了注释符,这样就很好的避免了遗忘的风险。

符号:

//..............;/*.....................*/

在vs中注释过的代码一般会是绿色。

当然我们也可以注释中文等等。

原理

这里注释原理其实跟C语言中是一样的,代码在编译器中预编译的过程中会跳过被注释的这段,也就是说所有备注是过的代码对编译器而言是没有任何意义的。

变量

变量其实只不过是程序可操作的存储区的名称。C++ 中每个变量都有指定的类型,类型决定了变量存储的大小和布局,该范围内的值都可以存储在内存中,运算符可应用于变量上。

变量的名称可以由字母、数字和下划线字符组成。它必须以字母或下划线开头。大写字母和小写字母是不同的,因为 C++ 是大小写敏感的。这里注意不能是关键字,至于什么是关键字下文中会提到。

一句话解释为什么要用变量:为了便于我们对数据的使用。

我们想象一下,如果我们不能使用变量了,我们就只能操作内存了。

创建不同类型的变量

#include<iostream>
using namespace std;int main ()
{   // 整型 int myNum = 5; //单精度浮点型 float myFloatNum = 5.99; // 双精度浮点型 double myDoubleNum = 9.98; // 字符型char myLetter =  'D'; // 布尔型 bool myBoolean = true; //  字符串  string myString = "Runoob"; // 输出变量 cout << "int: " << myNum << endl; cout << "float: " << myFloatNum << endl;  cout << "double: "<< myDoubleNum << endl;  cout << "char: " << myLetter << endl;  cout << "bool: " << myBoolean << endl; cout << "string: " << myString << endl;  system("pause");return 0;
}

相关文章:

C++快速入门

本章内容我将结合C语言一起&#xff0c;初步学习了解c&#xff0c;与大家一起快速入门这门语言。当然鉴于c本身属于一门中级语言&#xff0c;大家对编程有一定了解之后来学习这门知识会更加得心应手。简介C 被认为是一种中级语言&#xff0c;它综合了高级语言和低级语言的特点。…...

ubuntu18.04 network有线网络图标缺失解决记录

先按照博客&#xff11;安装驱动   博客&#xff11;链接&#xff1a;Ubuntu安装 Realtek R8125 驱动_Lwang2018的博客-CSDN博客_瑞昱8125 for ubunt 安装完成后&#xff0c;遇到问题&#xff1a;ifconfig -a显示的有线网接口&#xff08;名字以en开头&#xff09;没有ip地址…...

java对象克隆和面向对象的设计原则

java进阶注解内置注解元注解自定义注解对象克隆浅克隆深克隆java设计模式建模语言类之间的关系依赖关系关联关系单向关联双向关联自关联聚合关系组合关系继承关系实现关系面向对象设计原则单一职责开闭原则里氏替换原则依赖倒置接口隔离迪米特原则组合/聚合复用原则注解 java注…...

传透式血氧仪设计方案

该方案一种检测方式是选择使用光敏二极管接收光信号&#xff0c;采用传统穿透式夹指测量&#xff1b;另一种是使用光谱传感器接收光信号&#xff0c;采用反射式测量。该传感器可将光信号直接转换成数据信息给主控端进行处理&#xff0c;从而节省了用户将光信号转换成模拟信号&a…...

让逆向工程师们头疼的代码混淆,就像永远也走不出的“浪浪山”

目录 代码混淆究竟是什么&#xff1f; 如何做代码混淆&#xff1f; 代码混淆不等于加密 App 加固非一时之功 “我想离开浪浪山。” 在数次尝试破解某个App 时&#xff0c;某个逆向工程师无奈感慨道。 逆向工程师顾名思义就是把一个个完整的软件逆推&#xff0c;还原成一段段…...

【拓展】基于机器学习的心脏病预测方法(14)——心脏病数据集补充

目录 前言1、数据集11.1 数据集介绍1.2 数据集属性2、数据集22.1 数据集介绍2.2 数据集属性3、数据集33.1 数据集介绍3.2 数据集属性4、下载地址前言 在实际研究过程中,前文所述数据集由于尺寸过小(仅有303份数据和13个属性信息)或数据集单一(仅有一个数据集,不具备普适性…...

深度解读Webpack中的loader原理

一、前言 webpack 是一个现代 JavaScript 应用的静态模块打包器。那么 webpack 是怎样实现不同种类资源模块加载的呢&#xff1f; 没错就是通过 loader。loader 用于对模块的源代码进行转换。loader 可以使你在 import 或加载模块时预处理文件。 我们带着下面几个问题&#…...

2023年全国最新二级建造师精选真题及答案

百分百题库提供二级建造师考试试题、二建考试预测题、二级建造师考试真题、二建证考试题库等&#xff0c;提供在线做题刷题&#xff0c;在线模拟考试&#xff0c;助你考试轻松过关。 一、单选题 1.关于法人在建设工程中的地位的说法&#xff0c;正确的是&#xff08;&#xff0…...

为什么现代企业发展离不开CRM系统的助力

如今的CRM系统对于任何企业来说都重要&#xff0c;因为它能帮助企业收获新客户&#xff0c;保留现有客户&#xff0c;并且将不同部门的信息全部汇集&#xff0c;实时提供关于每位客户整体全面的看法。因此&#xff0c;销售、市场营销和客户支持等领域的客户直接服务员工能够做出…...

vb.net计算之.net core基础(1)-获取农历和天气

目录 .net core 简介创建hello,world应用程序获取天气和农历.net core 简介 .NET Core是适用于 Windows、Linux 和 macOS 的免费、开源托管的计算机软件框架。 它是微软开发的第一个官方版本,具有跨平台能力的应用程序开发框架 (Application Framework),未来也将会支持 Free…...

设计模式之代理模式详解和应用

目录1 代理模式定义2 代理模式的应用场景3 代理模式的通用写法4 从静态代理到动态代理5 静态模式在业务中的应用6 动态代理在业务中的应用7 手写JDK动态代理实现原理7.1 JDK动态代理的实现原理7.2 CGLib动态代理容易踩的坑8 CGLib代理调用API及原理分析9 CGLib和JDK动态代理对比…...

JavaScript HTML DOM 节点列表

HTML DOM 是一种文档对象模型&#xff0c;它允许开发人员使用 JavaScript 来访问和修改网页的内容和结构。节点列表是 HTML DOM 中一个重要的概念&#xff0c;它允许开发人员以编程方式访问和操作文档中的节点元素。 在本文中&#xff0c;我们将探讨 JavaScript HTML DOM 节点…...

【音视频处理】码率、帧率越高越清晰?分辨率、像素、dpi之间是什么关系?码率的真实作用,I帧、B帧、P帧是什么

大家好&#xff0c;欢迎来到停止重构的频道。本期我们介绍一下视频的一些基础概念&#xff0c;如帧率、码率、分辨率、像素、dpi、视频帧、I帧、P帧、gop等。会解释多少码率是清晰的&#xff0c;是否帧率越高越流畅等问题。这些概念是比较杂乱的&#xff0c;我们按这样的顺序介…...

Java基础-认识注释、标识符关键字

注释 平时我们编写代码&#xff0c;当代码量较小时候&#xff0c;我们还可以看懂自己写的代码。但是当项目结构一旦复杂起来&#xff0c;我们就需要用到注释啦。注释并不会被执行&#xff0c;是写给我们开发者看的。 在java中的注释有三种 标识符 常见关键字 Java所有的组…...

【C#】静态扩展方法

静态类特征:1.不能用sealed或abstract修饰符&#xff1b;2.必须直接继承System.Object类型&#xff0c;不能试任何其他类的派生类&#xff1b;3.不能实现任何接口&#xff1b;4.不能包含任何操作符&#xff1b;5.不能使用protected或者protected internal修饰的静态成员&#x…...

医疗电子方案——血压计方案

高血压人群越来越多了&#xff0c;尤其是老人。高血压是一种十分常见的慢性疾病&#xff0c;同时也是引发心血管疾病最主要的因素。有关数据表明&#xff0c;我国每年因高血压死亡的病例竟然达到上百万之多&#xff0c;占到全部死亡比例的20%以上。所以大多数家庭都需要备有家用…...

深度分析React源码中的合成事件

热身准备 明确几个概念 在React17.0.3版本中&#xff1a; 所有事件都是委托在id root的DOM元素中&#xff08;网上很多说是在document中&#xff0c;17版本不是了&#xff09;&#xff1b;在应用中所有节点的事件监听其实都是在id root的DOM元素中触发&#xff1b;React自…...

17.微服务SpringCloud

一、基本概念 Spring Cloud 被称为构建分布式微服务系统的“全家桶”&#xff0c;它并不是某一门技术&#xff0c;而是一系列微服务解决方案或框架的有序集合。它将市面上成熟的、经过验证的微服务框架整合起来&#xff0c;并通过 Spring Boot 的思想进行再封装&#xff0c;屏蔽…...

Java基础面试题——JavaWeb专题

文章目录1.HTTP响应码有哪些2.Forward和Redirect的区别&#xff1f;3.Get和Post请求的区别4.介绍下OSI七层和TCP/IP四层的关系5.说说TCP和UDP的区别6. 说下HTTP和HTTPS的区别7.说下HTTP、TCP、Socket的关系是什么&#xff1f;8. 说下HTTP的长链接和短连接的区别9.TCP原理10. Co…...

MySql数据库约束

概述、目的 概念&#xff1a;约束是作用于表中字段上的规则&#xff0c;用于限制存储在表中的数据。 目的&#xff1a;保证数据库中数据的正确性、有效性和完整性。 分类&#xff1a; 约束描述关键字非空约束限制该字段的数据不能为nullNOT NULL唯一约束保证该字段的所有数据都…...

synchronized 学习

学习源&#xff1a; https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖&#xff0c;也要考虑性能问题&#xff08;场景&#xff09; 2.常见面试问题&#xff1a; sync出…...

第25节 Node.js 断言测试

Node.js的assert模块主要用于编写程序的单元测试时使用&#xff0c;通过断言可以提早发现和排查出错误。 稳定性: 5 - 锁定 这个模块可用于应用的单元测试&#xff0c;通过 require(assert) 可以使用这个模块。 assert.fail(actual, expected, message, operator) 使用参数…...

【算法训练营Day07】字符串part1

文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接&#xff1a;344. 反转字符串 双指针法&#xff0c;两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...

【Java_EE】Spring MVC

目录 Spring Web MVC ​编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 ​编辑参数重命名 RequestParam ​编辑​编辑传递集合 RequestParam 传递JSON数据 ​编辑RequestBody ​…...

今日科技热点速览

&#x1f525; 今日科技热点速览 &#x1f3ae; 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售&#xff0c;主打更强图形性能与沉浸式体验&#xff0c;支持多模态交互&#xff0c;受到全球玩家热捧 。 &#x1f916; 人工智能持续突破 DeepSeek-R1&…...

Springboot社区养老保险系统小程序

一、前言 随着我国经济迅速发展&#xff0c;人们对手机的需求越来越大&#xff0c;各种手机软件也都在被广泛应用&#xff0c;但是对于手机进行数据信息管理&#xff0c;对于手机的各种软件也是备受用户的喜爱&#xff0c;社区养老保险系统小程序被用户普遍使用&#xff0c;为方…...

【JVM面试篇】高频八股汇总——类加载和类加载器

目录 1. 讲一下类加载过程&#xff1f; 2. Java创建对象的过程&#xff1f; 3. 对象的生命周期&#xff1f; 4. 类加载器有哪些&#xff1f; 5. 双亲委派模型的作用&#xff08;好处&#xff09;&#xff1f; 6. 讲一下类的加载和双亲委派原则&#xff1f; 7. 双亲委派模…...

莫兰迪高级灰总结计划简约商务通用PPT模版

莫兰迪高级灰总结计划简约商务通用PPT模版&#xff0c;莫兰迪调色板清新简约工作汇报PPT模版&#xff0c;莫兰迪时尚风极简设计PPT模版&#xff0c;大学生毕业论文答辩PPT模版&#xff0c;莫兰迪配色总结计划简约商务通用PPT模版&#xff0c;莫兰迪商务汇报PPT模版&#xff0c;…...

【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制

使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下&#xff0c;限制某个 IP 的访问频率是非常重要的&#xff0c;可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案&#xff0c;使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...

腾讯云V3签名

想要接入腾讯云的Api&#xff0c;必然先按其文档计算出所要求的签名。 之前也调用过腾讯云的接口&#xff0c;但总是卡在签名这一步&#xff0c;最后放弃选择SDK&#xff0c;这次终于自己代码实现。 可能腾讯云翻新了接口文档&#xff0c;现在阅读起来&#xff0c;清晰了很多&…...