C++ 教程 - 01

news2025/1/16 20:19:17

文章目录

  • C++介绍
  • 环境配置
  • 第一个cpp程序
    • 案例练习
  • 变量

C++介绍

  • 基于C语言,继承了C的所有语法;

  • 静态类型语言,需要先编译,再执行;

  • 贴近底层硬件,运行速度快;
     

  • 支持面向对象、面向泛型,增强版的C;

  • 应用领域
    在这里插入图片描述

  • 编译(Compile),编译器 将整个源代码翻译成机器码(二进制文件),一次性交给计算机执行,如C/C++;

  • 解释(Interpret),由解释器将代码逐行解释为机器码,交给计算机执行,如 python/js ;

  • c++的运行
    在这里插入图片描述

  • 版本C++ 98、C++ 11、 C++ 14、 C++ 17、C++ 20

环境配置

集成开发环境Visual Studio ,编辑、编译;
下载地址
工具 -> 选项 可调整字体等
项目上右键 -> 设为启动项目,做项目切换;
Ctrl + k, c 注释;
Ctrl + k, u 取消注释;

 

第一个cpp程序

#include <iostream>    // 包含头文件
using namespace std;  // 使用std 命名空间


/*多行注释
int, 返回值类型
main,主函数
arr, 形式参数
{}, 函数体
*/
int main(char* arr[]) {
	// cout 输出  cin >> 变量 输入
	// << 流输出运算符
	// endl  结束一行
	cout << "Hello jack" << endl; // 必须分号结束
	
	// 系统调用
	system("pause"); // 暂停
	return 0;
}

在这里插入图片描述
选中源码-右键-编译,可以生成.obj目标文件;
选中项目-右键-生成(build),可以生成exe文件;
查看路径如下:
在这里插入图片描述

 

案例练习

  • 基于函数封装实现功能;
  • 输入用户名,输出欢迎信息;
#include <iostream>    // 包含头文件
using namespace std;  // 使用std 命名空间



// 函数封装 void 表示 函数没有返回值
void welcomeUser() {
	cout << "请输入用户名:" << endl;

	// C++ 支持字符串类型  而C不支持
	string name;

	// 输入
	cin >> name;

	// 输出欢迎信息
	cout << "Welcome " << name << endl;
}


int main(char* arr[]) {
	
	// 调用函数
	welcomeUser();

	// 系统调用
	system("pause"); // 暂停
	return 0;
}

也可以将该函数定义在另一个源文件中,本源文件内仅仅声明即可使用。声明如void welcomeUser(); 是没有函数体的;编译器会自动查找。

 

变量

  • 声明变量,即分配内存;
  • 命名以字母、数字、下划线,不以数字开头;
  • 在代码块{ }内部的变量为局部变量;在所有{}外的变量为全局变量
  • 局部变量必须先初始化赋值,才可以使用;而全局变量默认初始化;
  • 代码块内部,优先查找(作用域最小的)局部变量,使用 :: + 变量 访问全局变量;
#include <iostream>    // 包含头文件
using namespace std;  // 使用std 命名空间


// 定义枚举类型
enum Sex
{
	MALE,  // 默认从0开始
	FEMALE
};


int main(char* arr[]) {
	// 整型定义
	int age; // 变量的声明
	age = 23; // 初始化赋值

	// double  
	double score = 79.534;  // 声明并赋值  为变量定义
	float scoreF = 60.8f;

	// 字符串定义
	string name = "jack";
	string fullName = name + "li";  // 字符串的拼接

	// 布尔
	bool isGood = false;

	// 枚举
	enum Sex sex = MALE; // 定义 并赋值

	// 输出
	cout << "姓名:" << name << endl;
	cout << "全名:" << fullName << endl;
	cout << "性别:" << sex << endl;
	cout << "年龄:" << age << endl;
	cout << "分数:" << score << endl;
	cout << "是否好学生:" << isGood << endl;

	// 系统调用
	system("pause"); // 暂停
	return 0;
}
  • 变量基本类型
    • int ,整型
    • float,单精度浮点型
    • double 小数默认为double,双精度;
    • string,字符串
    • bool,true/false
    • char, 字符类型 单引号+单字符;
       
  • 自定义类型
    • enum,枚举
    • struct,结构体
    • union,共用体
       

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1291237.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一文读懂MySQL基础知识文集(8)

&#x1f3c6;作者简介&#xff0c;普修罗双战士&#xff0c;一直追求不断学习和成长&#xff0c;在技术的道路上持续探索和实践。 &#x1f3c6;多年互联网行业从业经验&#xff0c;历任核心研发工程师&#xff0c;项目技术负责人。 &#x1f389;欢迎 &#x1f44d;点赞✍评论…

CSS的逻辑组合伪类

CSS 的逻辑组合伪类有 4 种&#xff0c;分别是&#xff1a;:not()、:is()、:where()和&#xff1a;has()。 否定伪类:not() :not 伪类选择器用来匹配不符合一组选择器的元素。由于它的作用是防止特定的元素被选中&#xff0c;它也被称为反选伪类&#xff08;negation pseudo-…

编程实战:类C语法的编译型脚本解释器(九)编译语句

系列入口&#xff1a;编程实战&#xff1a;类C语法的编译型脚本解释器&#xff08;系列&#xff09;-CSDN博客 前文已经介绍了编译入口&#xff0c;核心就是语句&#xff0c;本文介绍语句的编译。 目录 一、代码概览 二、辅助函数 2.1 tokens.IsPosNotToken(pos) 2.2 toke…

华为快应用遇到的坑(uniapp开发)

我这边是使用uniapp开发的华为快应用&#xff0c;我想实现的效果就是收藏功能&#xff0c;点击白色收藏&#xff0c;收藏变成红色&#xff0c;点击红色收藏变成白色收藏 <template><cover-view click"collect"><cover-image v-if"is_collect&quo…

cocos creator “TypeError: Cannot set property ‘string‘ of null

背景&#xff1a; 学习cocos creator时遇到"TypeError: Cannot set property string of null" 错误。具体代码如下&#xff1a;property({ type: Label })public stepsLabel: Label | null null;update(deltaTime: number) {this.stepsLabel.string Math.floor(…

在Linux系统中更换yum源为阿里云

(꒪ꇴ꒪ )&#xff0c;Hello我是祐言QAQ我的博客主页&#xff1a;C/C语言&#xff0c;数据结构&#xff0c;Linux基础&#xff0c;ARM开发板&#xff0c;网络编程等领域UP&#x1f30d;快上&#x1f698;&#xff0c;一起学习&#xff0c;让我们成为一个强大的攻城狮&#xff0…

学生成绩管理系统(Java)

开发环境: Windows 11 IDEA 2021.3.3 需求: package com.it.neu;import java.util.ArrayList; import java.util.Scanner;import static java.time.Clock.system;class Student { //创建学生类private String Stu_name;private String Stu_id;public Student(String id, S…

C++使用策略模式,减少使用switch...case...

目录 原理函数类模板函数使用switch...case...不使用switch...case... 知识点decltypestd::remove_reference 原理 函数 #include <iostream> #include <functional> #include <map>void fun1(int a, int b) {std::cout << "fun1 : a "<…

学生成绩的增删改查

接上一篇MySQL数据库与其管理工具Navicat link 1.下载JDBC 可以登录MySQL的官方网站&#xff1a;www.mysql.com&#xff0c;下载JDBC-MySQL数据库驱动&#xff08;JDBC Driver for MySQL&#xff09;下载mysql-connector-java-5.1.40.zip后&#xff0c;将该zip文件解压至硬盘&a…

当使用RSA加密,从手机前端到服务器后端的请求数据存在+

将转成了空格&#xff0c;导致解密出错 将空格转成了

Numpy 实现基尼指数算法的决策树

基尼系数实现决策树 基尼指数 Gini ⁡ ( D ) 1 − ∑ k 1 K ( ∣ C k ∣ ∣ D ∣ ) 2 \operatorname{Gini}(D)1-\sum_{k1}^{K}\left(\frac{\left|C_{k}\right|}{|D|}\right)^{2} Gini(D)1−k1∑K​(∣D∣∣Ck​∣​)2 特征 A A A条件下集合 D D D的基尼指数&#xff1a; Gi…

『VUE3后台—硅谷甄选』

一、准备前期 pnpm create vite

学习Python的未来前景分析

文章目录 前言学python可以干什么如果具备Python编程&#xff0c;能用Python做什么&#xff1a;学Python语言能干什么1.常规软件开发2.科学计算3.自动化运维4.云计算 学python编程对未来的影响关于Python技术储备一、Python所有方向的学习路线二、Python基础学习视频三、精品Py…

2024年江苏省职业院校技能大赛信息安全管理与评估 第二阶段学生组(样卷)

2024年江苏省职业院校技能大赛信息安全管理与评估 第二阶段学生组&#xff08;样卷&#xff09; 竞赛项目赛题 本文件为信息安全管理与评估项目竞赛-第二阶段样题&#xff0c;内容包括&#xff1a;网络安全事件响应、数字取证调查、应用程序安全。 本次比赛时间为180分钟。 …

星钻图形输出

答案&#xff1a; #include <stdio.h> int a 0, b 0; void printLine(int a , int b) //输出一行包含&#xff1a;若干个空格 若干个*&#xff0c;第一&#xff0c;二个参数为空格数和*数&#xff1b; (定义一个星钻输出函数) {while (a--) //打印a个空格{printf(…

小程序左右侧边栏

效果 点击左侧边栏&#xff0c;右侧会定位到对应内容&#xff1b; 右侧滑动&#xff0c;左侧也会显示对应的高亮&#xff1b; 也就是左右联动的效果 项目场景 tocc-app 应急巡检 传入数据: 左侧点击&#xff0c;右侧滚动到对应位置 点击左侧导航条&#xff0c;就计算出右…

JavaScript面向对象编程的奥秘揭秘:掌握核心概念与设计模式

​&#x1f308;个人主页&#xff1a;前端青山 &#x1f525;系列专栏&#xff1a;JavaScript篇 &#x1f516;人终将被年少不可得之物困其一生 依旧青山,本期给大家带来JavaScript篇专栏内容:JavaScript-面向对象 目录 什么是面向对象&#xff1f; 类与对象的主要区别 创建…

【数据结构】- 详解哈夫曼树(用 C 语言实现哈夫曼树的构造和哈夫曼编码)

目录 一、哈夫曼树的基本概念 二、哈夫曼树的构造算法 2.1 - 哈夫曼树的构造过程 2.2 - 哈夫曼树的存储表示 2.3 - 算法实现 三、哈夫曼编码 3.1 - 哈夫曼编码的主要思想 3.2 - 哈夫曼编码的性质 3.3 - 算法实现 一、哈夫曼树的基本概念 哈夫曼树的定义&#xff0c;涉…

电脑字体大小怎么设置?学会这3个方法,轻松调节!

“感觉我近视又加深了&#xff0c;最近看电脑居然感觉字体有点小。我想把字体放大一点但却不知道应该怎么操作&#xff0c;有没有朋友可以指导一下我呀&#xff1f;” 在我们的日常生活中&#xff0c;电脑已经成为我们获取信息、交流和娱乐的重要工具。字体大小作为电脑显示的基…

厦门基础城建中排水管网作用,助力提升城市韧性

在厦门这个美丽的海滨城市&#xff0c;城市建设与发展日新月异&#xff0c;其中&#xff0c;城市生命线下的排水管网监测系统作为城市基础设施的重要组成部分&#xff0c;对保障城市安全、提升城市品质发挥着关键作用。 对于厦门城市建设中的排水管网监测系统安装策略 1. 合理…