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

黑马程序员C++2024版笔记 第0章 C++入门

1.C++代码的基础结构

以hello_world代码为例:

预处理指令

#include<iostream>
using namespace std;

代码前2行是预处理指令,即代码编译前的准备工作。(编译是将源代码转化为可执行程序.exe文件的过程)

主函数

主函数是程序入口,即程序执行的开始。

其中的代码是逻辑代码/功能代码,每一行以分号;结尾。

int main()
{cout << "Hello World!" <<endl;return 0;
}

2.单工程多main函数设置

Clion是以工程管理代码,一般情况下,一个过程代指一个具体的程序开发任务。即,

  • 每个程序开发都有各自对应的工程
  • 由于main函数是工程的入口,所以每个工程仅允许1个main函数。

在学习过程中,每个知识点都创建一个文件夹不方便,一个比较直观的想法是,把每个文件下的main函数改成其他,比如main11,main22,但是这样就太难受了。

另一个办法:创建新文件时,把默认的“添加到目标”(add to target)取消勾选,即可正常运行。

3.手动编译代码并运行

使用Clion集成开发工具可以快捷的通过鼠标点击直接运行代码。但是作为开发人员,原始的代码编译并运行的方式也是需要了解的。

mingw工具可以实现在Windows、macos和Linux系统编译。

3.1编译器相关前置操作

MINGW下载

https://sourceforge.net/projects/mingw/

安装

双击exe程序安装,change可以改变安装位置,点击continue开始联网下载。

下载完成后点击continue就会弹出mingw 安装管理器:

选择mingw32和mingw32-gcc-g++,选中然后点击“mark for installation”

选中后在左上角installation选择apply changes,并在确认框点击apply

安装完成后关闭

检查

打开mingw的安装位置,选择bin文件夹并打开找到g++

配置环境变量

在windows搜索框里搜索“高级系统设置”,点击面板里的环境变量按钮,找到系统变量中的path变量,点击编辑。将bin文件夹所在路径复制并添加进path中,点击确定,环境变量就配置好了。

验证

windows+r,输入cmd,打开命令行。输入

g++ -v

并回车。如果弹出gcc版本(例如我的是gcc version 6.3.0)说明配置成功。

3.2手动编译代码

新建一个文本文件,把任意代码写进去。写完关闭并保存。

修改文件后缀为.cpp。代开命令行,使用cd命令切换到测试代码所在的文件夹

在当前目录下输入

g++ 文件名.cpp -o 文件名.exe

并回车。 

当前目录下除了test.cpp文件还生成了test.exe文件。直接输入test.exe回车就能运行了。

以上就是编译步骤。

这部分黑马的曹老师总结了一个文档方便大家记忆:手动编译代码并执行 · 语雀

4.[扩展]vscode环境配置

提示:配置vscode环境必须完成第三节的编译环境准备。

老师将配置过程写在这篇文档里了,可以结合b站的课程听一下。

C++入门-08_【扩展】VSCode环境配置_哔哩哔哩_bilibili

Visual Studio Code 配置 · 语雀

5.cout打印输出

在clion中创建cout源文件。注意补药勾选添加到目标。

单行输出:endl有换行作用

#include <iostream>
using namespace std;int main() {cout << "1" << endl;cout << "2" << endl;return 0;
}

一行多个输出:<<填充内容

#include <iostream>
using namespace std;int main() {cout << "1" << "+" << "1" << endl;return 0;
}

6.代码注释

单行注释

以//开头的行被视为注释,编译器不会对其进行处理。
// 所在行右侧内容作为注释存在
//和注释内容建议相隔一个空格。

多行注释

多行注释以/*开头,以*/结尾,中间全部内容为注释。在/*和*/之间可以任意换行。

7.Clion设置

1.修改为中文->安装Chinese插件

2.字体大小调整->设置搜索鼠标勾选”使用ctrl+鼠标更改字号“,选择所有编辑器

3.更换主题->插件搜索主题

4.快捷键

shift+alt+键盘上/下控制当前行进行上/下移动
ctrl+d复制当前
home、end移动光标到行首、行尾
ctrl+键盘左/右光标左右跳单词

相关文章:

  • SpringBoot应用启动过程
  • mybatis-plus配置逻辑删除
  • SEO双核驱动:关键词与长尾词优化
  • AI 治理进行时:网信办审核加速,AI 合规刻不容缓
  • 精益数据分析(62/126):从客户访谈评分到市场规模估算——移情阶段的实战进阶
  • 用OBD部署OceanBase社区版的避坑指南
  • 最优化方法Python计算:有约束优化应用——线性不可分问题支持向量机
  • python处理异常,JSON
  • k8s 1.10.26 一次containerd失败引发kubectl不可用问题
  • [Harmony]获取资源文件中.txt文件中的字符串
  • Spring MVC 拦截器 (HandlerInterceptor) 是什么? 它与 Servlet Filter 有什么区别?
  • Python模块化编程
  • 检测按键抖动的时间
  • groovy 如何遍历 postgresql 所有的用户表 ?
  • pytest框架 - 第二集 allure报告
  • 关于xammp数据库打开不了,但是日志没错误的问题解决以及其数据库的备份
  • 广度和深度优先搜索(BFS和DFS)
  • 国产芯片LH001-91为什么可以代替TI的ADS1291?
  • 【沉浸式求职学习day40】【java面试题精选2】
  • 哈夫曼树完全解析:从原理到应用
  • 上海虹桥国际咖啡文化节开幕,推出茶咖文化特色街区、宝妈咖啡师培训
  • 证监会:2024年依法从严查办证券期货违法案件739件,作出处罚决定592件、同比增10%
  • 陕西榆林:全力推进榆林学院升格榆林大学
  • 国防部:中方愿与俄方不断增强两军关系良好发展势头
  • 德国总理默茨发表首份政府声明:将提升国防能力,全力发展经济
  • 加强战略矿产出口全链条管控将重点开展哪些工作?商务部答问