C++初识 — 从零开始的C++入门介绍

【C++初学】C++基础入门:从零开始的详细指南 数据类型 数组名[数组长度];数据类型 数组名[数组长度] = {值1, 值2, …};数据类型 数组名[] = {值1, 值2, …};二维数组有四种定义方式:数据类型 数组名[行数][列数];数据类型 数组名[行数][列数] = {{数据1, 数据2}, {数据3, 数据4}};{1, 2, 3},{4, 5, 6}数据类型 数组名[行数][列数] = {数据1, 数据2, 数据3, 数据4};数据类型 数组名[][列数] = {数据1, 数据2, 数据3, 数据4}; 阅读详情

  C 语言自 20 世纪 70 年代诞生以来,已经得到了广泛的应用,全世界有大量的 C 语言程序员、库代码和开发环境。然而尽管如此,C 语言毕竟是一种面向过程的语言,已经远远不足以满足运用面向对象方法,进行软件开发的需要了。因此,在 1980 年,AT&T 贝尔实验室的 Bjarne Stroustrup 博士便在 C 语言的基础上,发明了 C with Class 语言,最终演变成了现在的 C++ 语言。

  如果我们把计算机科学或软件工程比喻成武侠小说的世界的话,那么大规模的软件工程活动,就相当于是一整套武学体系,落实到我们具体的软件工程项目上就是那套武学体系中的一套而已。而 C++ 语言,则是这个体系中最为基本的拳脚招数。

  C++是计算机科学史上最为重要的语言之一——从它诞生以来,几乎每一个平台,每一个系统,都有大量的由 C++ 编写出的应用程序。凭借着优秀的面向对象特性、优秀的运行效率与速度、良好的可移植性,C++ 语言直到今天仍然有着极其广泛的应用——后续发展的典型的面向对象语言,比如 JAVA 和 C# ,也深受 C++ 影响,在语法上跟 C++ 几乎如出一辙。
  在我看来,不管你在将来是否要进行C++的开发工作,C++基本的语意和语法都是我们计算机科学(CS)和软件工程(SE)从业者必须要掌握的编程语言。就是像是如上文说的一样,C++影响了很多其他的编程语言。然而最核心的是——在学习C++的时候,它为我们传递一种编程的思想、素养和方法,或是面向过程、或是面向对象,这对于我们继续学习更高级别、更简洁(如Python)的编程语言有着极大的帮助。

C++真的很难?

  哪些觉得C++很难的人,他们也许不知道,这并不是C++的难度,而是C++的量度。C++ 实际上是一个由多个部分组成的联邦,例如面向对象编程,函数式编程,模板,以及继承自纯 C 语言的面向过程编程等。而对于我们新手而言,我们只需要先掌握它的基础部分就可以了,正所谓:“饭,要一口一口地吃;爱,要一点一点地给”,而对于C++永远也不要失去在自己是新手时对C++的那种渴望!
  C++ 就是一顿丰盛的自助餐,取得你所需要的部分就行了,你不需要刻意地去使用那些复杂的特性,只要能完成你的工作就行。如果,你以后需要从事C++的相关工作,也不用着急,因为在你工作的这个过程中,就是你继续进阶C++的时候,而现在我们能做的就是保持一颗追求C++的心,学好自己能够当下的能力可以触及的C++相关的知识即可。

我怎么开始C++?

  C++的基础语法和语义是基于C语言的;看到这里,我建议你先去学C语言,从C语言开始。在学习C++,你是逃不过C语言的。如果你混合这C和C++一起学的话,反而会让你产生混乱,举个例子,C语言里面的输出用“printf”而C++里面输出用的是“cout”,尽管这两个输出再高手眼里可以混用,但对于新手来说,还是先区分得好。
  C语言和C++最大的区别是:**C语言面向过程,C++面向对象。**如果你不明白啥事面向过程啥是面向对象,那你就先认为这是两种有着巨大差别的事物。我认为,面向过程是面向对象的基础。

  接下来,开始C++。
1、此时,你需要一本或基本教材,然后就是辅助视频即可。在任意一个搜索引擎搜索:C++入门教材。在任意一个视频网站搜索(推荐:bilibili.com):C++。
2、筛选你的教材和视频教程。
3、一步接着一步,看书看视频,重复别人写的代码,搞清楚它的原理,做好笔记,及时复习。再做点训练,各大OJ平台。。

在哪里写代码、运行、调试?

  我们常常写代码的地方都是一个叫做IDE的地方,即需要专用的“编程软件”(集成开发环境(Integrated Development Environment),简称 IDE )。所谓的 IDE ,其实就是把编辑器、编译器和其他的一系列工具整合在一起的产物。这样不仅项目的开发速率,同时也为开发者省事、省心、省力!
接下来,介绍几款IDE(windows平台):

1、Dev-Cpp

小巧灵活,占用较小的本地控件;调试很蛋疼,见面简单明了;推荐新手;

2、Microsoft Visual Studio

搭建费时,占用本地空间很大;功能强大,调试效率高,界面操作性强;两个字总结:牛逼。
在Dev-Cpp用得差不多了的时候,可以入手。

3、 Code::Blocks

略

理解C++运行过程?

  程序语言可以分为机器语言,汇编语言和高级语言 三个层次——现阶段我们人类开发者能够直接编写的是汇编语言和高级语言,绝大多数情况下用到的还是高级语言。所谓的高级语言,就是由英文字母和字符写成的语句,来实现逻辑,从而实现功能。

  具体地说,我们自己用高级语言写的程序,称为高级语言源程序,而将其转化成二进制代码之后的程序,称为目标程序——它已经是完全的二进制机器指令了,这个过程称为编译。那么,是不是有目标程序就能直接运行了呢?我们需要考虑到,如果一个程序比较大的话,那么它可能要有多个模块来协作——就算是简单地向屏幕上输出一个“Hello, world.”,你也依然需要调用系统库里定义好的输出功能模块。

  所以,我们需要把所有需要的模块都合并在一起,才能构成一个可以执行的程序——这个就是程序的链接过程,链接完成之后,才会得到一个可以执行的程序。那么,你肯定要问:编译和链接过程该怎么进行呢?有一些专门的软件可以完成这个过程,这些软件被称为编译器(Compiler) 和链接器(Linker)。

  在编译和链接的过程中,都会对程序中的错误进行检查——只有代码准确无误的程序才能编译成功。如果代码本身有错误的话编译器就会报错,如下图所示。但是需要注意的是,编译通过,并不代表程序本身是完全正确的——你仍然需要通过调试,确认程序可以正确地运行,才能说你的程序是准确无误的。

Zemax操作16--激光谐振腔(含晶体) 谐振腔(含晶体) 阅读详情

相关推荐

ArcGIS山体坡度、坡向分析

本篇文章主要记录自己在对山体坡向及坡度分析中的一些操作。

Belence_zhao的博客 7410

【从零开始学习C++】(1)C++ 入门

什么是c++ C语言是结构化和模块化的语言,适合处理较小规模的程序。对于复杂的问题,规模较大的程序,需要高度 的抽象和建模时,C语言则不合适。为了解决软件危机, 20世纪80年代, 计算机界提出了OOP(object oriented programming:面向对象)思想,支持面向对象的程序设计语言应运而生。 1982年,Bjarne Stroustrup博士在C语言的基础上引入并扩充了面向对象的概念,发明了一种新的程序语 言。为了表达该语言与C语言的渊源关系,命名为C++。因此:C++是基于C语言而产生

cls的博客 1949

利用GeoTools高效切割GeoTIFF为WebP瓦片:从配置到实战

本文详细介绍了如何利用GeoTools将GeoTIFF高效切割为WebP瓦片,从环境配置到实战技巧全面覆盖。通过对比WebP与PNG格式的优势,展示其在体积压缩和传输效率上的显著提升,并提供多线程切割、内存管理等性能优化方案,帮助开发者快速实现地理空间数据的Web地图服务部署。

agile9scrum的博客 814

【从零开始学习C++】第一阶段_入门基础必懂

文章目录p3 第一个C++程序p4 程序的注释p5 变量的创建和使用p6 常量的创建和使用p7 常用的编程关键字p8 标识符命名规则p9 数据类型-整型p10 数据类型-sizeof关键字p11 数据类型-实型(浮点型)p12 数据类型-字符型p13 数据类型-转义字符p14 数据类型-字符串型p15 数据类型-布尔类型p16 数据类型-数据的输入p17 算术运算符-加减乘除p18 算术运算符-取模运算p19 算术运算符-递增递减p20 p3 第一个C++程序 #include <iostream&g

酸梅果茶的博客 3972

UDS服务应该支持哪些否定响应码

UDS服务应该支持哪些否定响应码所有服务都需支持的否定响应码具体的服务需要支持的否定响应码否定响应码定义及其取值 USD诊断服务的否定响应中包含有导致否定响应原因的编码,称为否定响应码(NRC, Negative Response Code)。否定响应码的取值范围为0x00 - 0xFF,被分为三组: 0x00:服务器内部实现否定响应码判断逻辑时使用,表示要给出肯定响应。 0x01 – 0x7F:诊断通信相关的否定响应码。 0x80 – 0xFF:服务器收到诊断服务请求时,由于某些条件不满足要求而给出的否定

闲聊汽车软件开发 4万+

安卓ai自动化脚本 Yyds.Auto实现 示例 纯ai图像识别自动点击脚本

纯ai识别实现自动化脚本

专注安卓前沿科技 4780

从0开始的C++学习之路(转载黑马程序员)

从0开始的C++C++基础入门1 C++初识1.1 第一个C++程序1.1.1 创建项目1.1.2 创建文件1.1.3 编写代码1.1.4 运行程序1.2 注释1.3 变量1.4 常量1.5 关键字1.6 标识符命名规则2 数据类型2.1 整型2.2 sizeof关键字2.3 实型(浮点型)2.4 字符型2.5 转义字符2.6 字符串型2.7 布尔类型 bool2.8 数据的输入3 运算符3.1 算术运算符3.2 赋值运算符3.3 比较运算符3.4 逻辑运算符4 程序流程结构4.1 选择结构4.1.1

meteor的博客 2343

金融领域强化学习在高频交易中的应用

强化学习(Reinforcement Learning,简称RL)是一种机器学习范式,通过智能体与环境的交互来学习策略,以最大化累计奖励。与监督学习和无监督学习不同,强化学习依赖于动态的反馈机制,智能体通过试错不断优化决策过程。高频交易(High-Frequency Trading,简称HFT)是指在极短时间内进行的大量金融交易,通常利用算法和计算机系统自动执行交易策略。高频交易依赖于高速的数据处理和决策能力,以捕捉市场中的微小价格波动。状态(State):环境在某一时刻的观测,反映了系统的当前情况。

AI天才研究院 889

C++零基础入门教学(万字解析)

函数的定义包括函数头和函数体。函数头指定函数的返回类型、函数名和参数列表。函数体包含函数的具体实现。// 函数的定义return sum;// 函数的调用在上面的示例中,add函数接受两个整数参数a和b,计算它们的和,并将结果返回。在函数调用时,传递参数3和5,将返回值赋给result变量。数组的定义需要指定元素的类型和数组的名称,并可以指定数组的大小。// 声明一个整型数组// 声明一个字符型数组并初始化在上面的示例中,声明了一个整型数组numbers,它有5个元素。

爱编程的鱼的博客 1万+

Spine骨骼动画查看器 - Skeleton Viewer

骨骼动画是现代游戏和动画制作中常用的技术之一。Spine骨骼动画查看器(Skeleton Viewer)是一个官方提供的工具,用于查看和调试Spine骨骼动画。本文将介绍Skeleton Viewer的功能和使用方法,并提供相应的源代码示例。通过Skeleton Viewer,开发者可以直观地查看和调试Spine骨骼动画,包括骨骼结构、动画播放和事件触发等。这有助于提高骨骼动画的质量和效果,并加速开发过程。以上代码演示了如何使用Skeleton Viewer查看和播放Spine骨骼动画。

HsvvDatabase的博客 3459

树莓派 Raspberry Pi 使用 YOLOv8 YOLOv10 YOLOv11进行目标检测及推理加速,Run YOLOv8 YOLOv10 YOLOv11 on Raspberry Pi

libcamera 是 linux 新增加用于访问 camera 的 API。树莓派参与了 libcamera 的开发,并且在新的摄像头软件中开始从依赖于固件的摄像头图像处理管道(Image processing pipeline, ISP)迁移到更加开放的 libcamera。当然这块用USB 摄像头应该也是可以的。

shiter编写程序的艺术 5567

零基础想学习C++,应该怎么开始入手?

​ C++融合了3种不同的编程方式:C语言代表的过程性语言、C++在C语言基础上添加的类代表的面向对象语言、C++模板支持的泛型编程。

人邮异步社区 2819

SAP Joule 经过了超过 2.5 亿行 ABAP 代码的训练之后......

披露的统计数据,Joule 提供的这种全新系统交互方式,可将事务性任务执行速度提高 90%,访问 SAP Help Portal 内容的速度提高 95%。在 ABAP 应用开发领域,SAP 官网数据显示,Joule 经过超过 2.5 亿行 ABAP 代码的训练,有信心成为这一领域行业领先的代码助手。刚刚过去的 SAP 蓝宝石大会上,SAP 提到,从2023年第四季度以来,SAP 已经交付了 50 项基于人工智能的创新。让其生成 SAP 应用能够识别的结构化应用数据,业务用户全程无需离开 SAP 应用程序。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 792

初识cpp【C++】

定义命名空间,需要使用到namespace关键字,后面跟命名空间的名字,然后接一对{ }即可,{ }中即为命名空间的成员。命名空间解决了C语言中的命名冲突问题例如:出现命名冲突的原因:当然,在引入在第三方库时,C语言也容易出现重定义现象;解决方法:将命名冲突的变量放到命名空间域中上图中 namespace lisi 中的 lisi 是 命名空间的名字命名空间中可以定义变量/函数/类型命名空间可以嵌套同一个工程中允许存在多个相同名称的命名空间,编译器最后会合成同一个命名空间中。

加油!!! 1972

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

【C++入门】初识C++

✨✨ C语言是结构化和模块化的语言,适合处理较小规模的程序。对于复杂的问题,规模较大的程序,需要高度的抽象和建模时,C语言则不合适。✨✨ 为了解决软件危机, 20世纪80年代, 计算机界提出了OOP(object oriented programming:面向对象)思想,支持面向对象的程序设计语言应运而生。✨✨1982年,Bjarne Stroustrup博士在C语言的基础上引入并扩充了面向对象的概念,发明了一种新的程序语言。为了表达该语言与C语言的渊源关系,命名为C++。

Renswc的博客 2907

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

【C++入门】1.初识C++

大家好,这是我第一次写博客, 希望通过写博客的方式巩固我学习的内容。当然,如果能给大家带来一些收获那更好。这一篇内容是C++的入门学习,本节内容不会很难,大部分是关于引入,后续关于C++的学习难度将会持续上升,所以我们要打好基础,为后面做准备。首先我们要了解C++的历史,可以说C++是C语言的升级版,本贾尼博士在使用C语言的过程中,由于在一些功能使用上的不方便,从而进行修改,完善,从而创造了C++,C++兼容C语言的绝大多数语法,下面我们要写第一个C++程序了。

2502_91877193的博客 1174

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

黑马——C++基础入门

抱歉很长时间没看了,才发现之前那篇C++基础入门被删掉了,在这里重新补上。大家加油啊!文末补上C++基础入门pdf版本,有需要自取,如果链接失效或者文章又被删了,记得私信我! C++基础入门 1 C++初识 1.1 第一个C++程序 编写一个C++程序总共分为4个步骤 创建项目 创建文件 编写代码 运行程序 1.1.1 创建项目 ​ Visual Studio是我们用来编写C++程序的主要工具,我们先将它打开 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w8id2.

漏网小鱼的博客 4万+

【C++】——入门基础

C++是在C的基础之上,容纳进去了面向对象编程思想,并增加了许多有用的库,以及编程范式等从本篇开始我们就进入C++的学习

2302_78420373的博客 1503

C++入门基础初识

初识C++C++ 发展历程C++ 实际应用第一个C++程序命名空间如何命名空间使用命名空间使用 using 指令C++的输入和输出包含头文件C++的缺省参数C++的函数重载。

Zyzzzyz_的博客 1440

CPP初识

C++ 语言是一种面向对象的、编译型语言,在 C 语言的基础上发展而来。它由 Bjarne Stroustrup 于 20 世纪 70 年代末开始开发,最初被称为 “C with classes”,1983 年正式命名为 C++。1998 年发布了第一个国际标准 ISO/IEC 14882:1998(C++98),之后又经历了多次修订和改进,如 C++11、C++14、C++17、C++20 等标准分别在 2011 年、2014 年、2017 年和 2020 年发布。

qq_59805046的博客 2049

C++入门:初识类和对象

在早期C/C++中auto的含义是:使用auto修饰的变量,是具有自动存储器的局部变量,但遗憾的是一直没有人去使用它,大家可思考下为什么?auto不再是一个存储类型指示符,而是作为一个新的类型指示符来指示编译器,auto声明的变量必须由编译器在编译时期推导而得。

暴躁小吕的博客 7790

【C++基础入门笔记】一.C++初识

C++是一种计算机高级程序设计语言,由C语言扩展升级而产生,最早于1979年由本贾尼·斯特劳斯特卢普在AT&T贝尔工作室研发。C++既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计。C++拥有计算机运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力。

计算机科研杂货铺 613

llama.cpp初识

本文主要讲我学习llama的所思所想

m0_54069809的博客 2765

【C++篇】启航——初识C++(上篇)

C++的广泛应用涵盖了从游戏开发、图形处理到操作系统和大型软件系统的构建。凭借丰富的标准库和强大的模板机制,C++使开发者能够编写高效且可复用的代码。这篇博客将带你深入了解C++的基本概念、发展历程,以及学习这门语言的重要性和应用场景。无论你是编程新手还是有经验的开发者,C++都能为你的编程之旅增添新的视角和技能。

平凡程序猿~的博客 3835

一、C++入门详细笔记

文章目录变量常量关键字标识符命名规则整型sizeof关键字实型(浮点型)字符型转义字符 变量 int a = 10; //变量 常量 常量不可修改 两种定义方法: 第一种: #define 宏常量 语法:#define 常量名 常量值 #define Day 7 一般定义在代码的上方,结尾不需要分号 #include <iostream> using namespace std; #define Day 7 int main() { cout << "一周共有多少天:

zdb 1万+

C++入门自用

编写一个C++程序总共分为4个步骤 Visual Studio是我们用来编写C++程序的主要工具,我们先将它打开 右键源文件,选择添加->新建项给C++文件起个名称,然后点击添加即可。#include<iostream> using namespace std; int main() { cout << "Hello world" << endl; system("pause"); return 0; }作用:在代码中加一些说明和解释,方便自己或其他程序员程序员阅读代码两种格

weixin_64247589的博客 1794
上一篇: 【Java类与对象】内部类的理解
下一篇: C++初识 — 从Hello World开始
ALGO阿狗
博客等级 码龄9年 64粉丝 149原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值