c++基础学习第一天

news2024/11/16 23:49:15

c++基础学习第一天

文章目录

  • 1、C++初识
    • 1.1、注释
    • 1.2、变量
    • 1.3、常量
    • 1.4、关键字
    • 1.5、标识符命名规则
  • 2、数据类型
    • 2.1、整型
    • 2.2、sizeof关键字
    • 2.3、实型(浮点型)
    • 2.4、字符型
    • 2.5、转义字符
    • 2.6、字符串型
    • 2.7、布尔类型bool
    • 2.8、数据的输入
  • 3、运算符
    • 3.1、算术运算符
    • 3.2、幅值运算符
    • 3.3、比较运算符
    • 3.4、逻辑运算符
  • 4、程序流程结构
    • 4.1、选择结构
      • 4.1.1、选择结构(if)
      • 4.1.2、选择结构(三目运算符)
      • 4.1.3、选择结构(switch)
    • 4.2、循环结构
      • 4.2.1、循环结构(while)
      • 4.2.2、循环结构(do...while)
      • 4.2.3、循环结构(for)
      • 4.2.4、循环结构(嵌套循环)
    • 4.3、跳转语句
      • 4.3.1、break语句
      • 4.3.2、continue语句
      • 4.3.3、goto语句


1、C++初识

1.1、注释

作用:在代码中加一些说明和解释,方便自己或其他程序员程序员阅读代码
在这里插入图片描述

1.2、变量

作用:给一段指定的内存空间起名,方便操作这段内存
语法: 数据类型 变量名=切始值

1.3、常量

作用:用于记录程序中不可更改的数据
C++定义常量两种方式
1.#define宏常量:#define 常量名 常量值
通常在文件上方定义,表示一个常量
2.c0nst修饰的变量:const 数据类型 常量名=常量值
通常在变量定义前加关键字const,修饰该变量为常量,不可修改

1.4、关键字

作用:关键字是C++中预先保留的单词(标识符)
在定义变量或者常量时候,不要用关键字

1.5、标识符命名规则

作用:C++规定给标识符(变量、常量)命名时,有一套自己的规则

  • 标识符不能是关键字
  • 标识符只能由字母、数字、下划线组成
  • 第一个字符必须为字母或下划线
  • 标识符中字母区分大小写
    建议:给标识符命名时,争取做到见名知意的效果,方便自己和他人的阅读

2、数据类型

C++规定在创建一个变量或者常量时,必须要指定出相应的数据类型,否则无法给变显分配内存

2.1、整型

作用:整型变量表示的是整数类型的数据
C++中能够表示整型的类型有以下几种方式,区别在于所占内存空间不同:
在这里插入图片描述

2.2、sizeof关键字

作用:利用sizeof关键字可以统计数据类型所占内存大小
语法:sizeof(数据类型/变量)

2.3、实型(浮点型)

作用:用于表示小数
浮点型变量分为两种:
1.单精度1oat
2.双精度double
两者的区别在于表示的有效数字范围不司。
在这里插入图片描述

2.4、字符型

作用:字符型变量用于显示单个字符
语法:char ch=‘a’;
注意1:在显示字符型变量时,用单引号将字符括起来,不要用双引号
注意2:单引号内只能有一个字符,不可以是字符串
·C和C++中字符型变量只占用1个字节。
·字符型变量并不是把字符本身放到内存中存储,而是将对应的ASCII编码放入到存储单元

2.5、转义字符

作用:用于表示一些不能显示出来的ASCII字符
现阶段我们常用的转义字符有:\n,\t,\
在这里插入图片描述

2.6、字符串型

作用:用于表示一串字符
两种风格
1.C风格字符串:char 变量名[]=“字符串值"
2.C+风格字符串:string 变量名=“字符串值”

2.7、布尔类型bool

作用:布尔数据类型代表真或假的值
bool类型只有两值:

  • true 真(本质是1)
  • false 假(本质是0)
    bool类型占1个字节大小

2.8、数据的输入

作用:用于从键盘获取数据
关键字:cin
语法:cin>>变量
数据输出:cout<<“请输入整型变量:”<<endl;

3、运算符

作用:用于执行代码的运算
本章我们主要讲解以下几类运算符:
在这里插入图片描述

3.1、算术运算符

作用:用于处理四则运算
算术运算符包括以下符号:
在这里插入图片描述

  • 两个整数相除结果依然是整数,将小数部分去除
  • 两个小数可以相除
  • ++ 前置和后置的区别 前置递增先让变量+1然后进行表达式运算
  • 后置递增先进行表达式运算,后让变量+1

3.2、幅值运算符

=,+=,-=,*=,%=,/=

3.3、比较运算符

==,>=,<=,!=,<,>

3.4、逻辑运算符

&&,||,!

4、程序流程结构

C/C+支持最基本的三种程序运行结构:顺序结构、选择结构、循环结构
·顺序结构:程序按顺序执行,不发生跳转
·选择结构:依据条件是否满足,有选择的执行相应功能
·循环结构:依据条件是否满足,循环多次执行某段代码

4.1、选择结构

4.1.1、选择结构(if)

多条件的if语句:if(条件1){条件1满足执行的语句}else if(条件2){条件2满足执行的语包}…else{都不满足执行的语句}
嵌套if语句:在if语句中,可以嵌套使用if语句,达到更精确的条件判断

4.1.2、选择结构(三目运算符)

作用:通过三目运算符实现简单的判断
语法:表达式1?表达式2:表达式3
解释:
如果表达式1的值为真,执行表达式2,并返回表达式2的结果;
如果表达式1的值为假,执行表达式3,并返回表达式3的结果。

// 在C++中三目运算符返回的是变量,可以继续赋值
(a4 > b ? a4 : b) = 100;
cout << "a=" << a4 << endl;
cout << "b=" << b << endl;

4.1.3、选择结构(switch)

switch语句
作用:执行多条件分支语句
语法:
switch(表达式)
case话果1:执行语句;break;
case结果2:执行语句;break;
default:执行语句;break;

4.2、循环结构

4.2.1、循环结构(while)

while循环语句
作用:,满足循环条件,执行循环语句
语法:while(循环条件){循环语句}
解释:只要循环条件的结果为真,就执行循环语句

4.2.2、循环结构(do…while)

do.…while循环语句
作用:满足循环条件,执行循环语句
语法
do{循环语句}while(循环条件);
注意:与while的区别在于do.whiles会先执行一次循环语句,再判断循环条件

4.2.3、循环结构(for)

for循环语句
作用:满足循环条件,执行循环语句
语法:
for(起始表达式;条件表达式;末尾循环体){循环语句}

for (int i= 0; i < 10; i++)
{
    cout << i << endl;
}

4.2.4、循环结构(嵌套循环)

作用:在循环体中再嵌套一层循环,解决一些实际问题

4.3、跳转语句

4.3.1、break语句

作用:用于跳出选择结构或者循环结构
break使用的时机:
·出现在switch中条件语句中,作用是终止case并跳出switch
·出现在循环语句中,作用是跳出当前的循环语句
·出现在嵌套循环中,跳出最近的内层循环语句

4.3.2、continue语句

作用:在循环语句中,跳过本次循环中余下尚未执行的语句,继续执行下一次循环

for (int i = 0; i < 100; i++)
{
    //如果是奇数输出,偶数不输出
    if (i % 2 == 0)//0246810
    {
        continue;//可以筛选条件,执行到此就不再向下执行,执行下一次循环
        ///break会退出循环,而continue?不会
    }
    cout << i << endl;
}

4.3.3、goto语句

作用:可以无条件跳转语句
语法:goto 标记;
解释:如果标记的名称存在,执行到goto语句时,会就转到标记的位置

//g0to语句
cout << "1、xxxx"<<endl;
cout << "2、xxxx"<<endl;
goto FLAG;
cout << "3、xxxx"<< endl;
FLAG:
cout << "4、xxxx" << endl;
cout << "5、xxxx" << endl;

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

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

相关文章

黑马点评-短信登录业务

原理 模型如下 nginx nginx基于七层模型走的事HTTP协议&#xff0c;可以实现基于Lua直接绕开tomcat访问redis&#xff0c;也可以作为静态资源服务器&#xff0c;轻松扛下上万并发&#xff0c; 负载均衡到下游tomcat服务器&#xff0c;打散流量。 我们都知道一台4核8G的tomca…

低密度奇偶校验码LDPC(八)——QC-LDPC译码器FPGA设计概要

往期博文 低密度奇偶校验码LDPC&#xff08;一&#xff09;——概述_什么是gallager构造-CSDN博客 低密度奇偶校验码LDPC&#xff08;二&#xff09;——LDPC编码方法-CSDN博客 低密度奇偶校验码LDPC&#xff08;三&#xff09;——QC-LDPC码概述-CSDN博客 低密度奇偶校验码…

循序渐进丨MogDB / openGauss 的三种函数稳定性关键字

一、Oracle 中类似的函数稳定性关键字&#xff08;DETERMINISTIC&#xff09; 在 Oracle 里&#xff0c;function有着一个DETERMINISTIC参数&#xff0c;它表示一个函数在输入不变的情况下输出是否确定&#xff0c;只要输入的参数一样&#xff0c;返回的结果一定是一样的&#…

挑选适合您企业的2024年人力资源管理软件:完整指南

今日给您盘点的热门人力资源管理软件有&#xff1a;Zoho People&#xff0c;SAP ERP HCM&#xff0c;Workday&#xff0c;Oracle HCM Cloud。 Zoho People 人力资源管理系统 Zoho People是一款由Zoho公司开发的人力资源管理软件&#xff0c;旨在从集中位置管理和访问所有员工数…

Sqli-labs靶场第20关详解[Sqli-labs-less-20]自动化注入-SQLmap工具注入

Sqli-labs-Less-20 通过测试发现&#xff0c;在登录界面没有注入点&#xff0c;通过已知账号密码admin&#xff0c;admin进行登录发现&#xff1a; 登录后会有记录 Cookie 值 设想如果在Cookie尝试加上注入语句&#xff08;报错注入&#xff09;&#xff0c;测试是否会执行…

STM32标准库开发——WDG看门狗

WDG&#xff08;Watchdo&#xff09;看门狗介绍 独立看门狗&#xff0c;独立运行&#xff0c;有自己的专门时钟——内部低速时钟LSI&#xff0c;只要在最晚喂狗时间前喂狗就不会导致自动复位 窗口看门狗&#xff0c;用的是APB1的时钟&#xff0c;不是独立的时钟。喂狗时间比较严…

项目解决方案: 实时视频拼接方案介绍(中)

目 录 1.实时视频拼接概述 2.适用场景 3.系统介绍 4. 拼接方案介绍 4.1基于4K摄像机的拼接方案 4.2采用1080P平台3.0 横向拼接 4.2.1系统架构 4.2.2系统功能 4.2.3方案特色 4.2.4适用场景 4.2.5设备选型 4.3纵横兼顾&#xff0c;竖屏拼接 4.3.1系统…

【网站项目】123网上书城系统

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

前端学习第四天-css提升

达标要求 掌握css复合选择器 块级元素和行内元素及行内块的区别? 哪些元素是块元素,行内元素及行内块元素? 熟练掌握display的用法 能够说出css三大特性 熟练运用背景样式 1. CSS复合选择器 复合选择器是由两个或多个基础选择器&#xff0c;通过不同的方式组合而成的…

Matlab偏微分方程拟合 | 源码分享 | 视频教程

专栏导读 作者简介&#xff1a;工学博士&#xff0c;高级工程师&#xff0c;专注于工业软件算法研究本文已收录于专栏&#xff1a;《复杂函数拟合案例分享》本专栏旨在提供 1.以案例的形式讲解各类复杂函数拟合的程序实现方法&#xff0c;并提供所有案例完整源码&#xff1b;2.…

【QT+QGIS跨平台编译】之六十四:【QGIS_CORE跨平台编译】—【错误处理:未定义类型QTemporaryDir - QgsSourceCache】

文章目录 一、未定义类型QTemporaryDir二、解决办法 一、未定义类型QTemporaryDir 报错&#xff1a; 二、解决办法 QgsSourceCache.h文件中 第25行修改为&#xff1a; #include <QTemporaryDir>

【成像光谱遥感技术】ChatGPT应用指南

遥感技术主要通过卫星和飞机从远处观察和测量我们的环境&#xff0c;是理解和监测地球物理、化学和生物系统的基石。ChatGPT是由OpenAI开发的最先进的语言模型&#xff0c;在理解和生成人类语言方面表现出了非凡的能力。本文重点介绍ChatGPT在遥感中的应用&#xff0c;人工智能…

数据结构 第3章 栈、队列和数组(一轮习题总结)

第3章 栈、队列和数组 3.1 栈3.2 队列3.3 栈与队列的应用3.4 数组和特殊矩阵 3.1 栈&#xff08;1 10 11 20&#xff09; 3.2 队列&#xff08;6 12 14 17&#xff09; 3.3 栈与队列的应用&#xff08;6 11&#xff09; 3.4 数组和特殊矩阵 3.1 栈 T1 栈和队列具有相同的逻辑…

tcpdump使用pcap-filter抓Vxlan包内数据

目录 1. 背景2. 参考3. 概念4. 环境5. 用法5.1 抓vxlan通讯中的icmp包5.2 tcpdump抓包命令解析5.2.1 tcpdump命令说明5.2.2 Vxlan协议报文解析 5.3 其他抓包例子5.3.1 抓包示例15.3.2 抓包示例2 1. 背景 看vxlan协议时&#xff0c;发现可以使用tcpdump高级用法&#xff08;pca…

微信小程序云开发教程——墨刀原型工具入门(Axure导入)

引言 作为一个小白&#xff0c;小北要怎么在短时间内快速学会微信小程序原型设计&#xff1f; “时间紧&#xff0c;任务重”&#xff0c;这意味着学习时必须把握微信小程序原型设计中的重点、难点&#xff0c;而非面面俱到。 要在短时间内理解、掌握一个工具的使用&#xf…

el-table实现转置表格

vue版本&#xff1a;vue2.6.10 elementui版本&#xff1a;2.15.14 实现效果&#xff1a;el-table实现行列互换 代码&#xff1a; <template><div class"app-container"><span>原始数据</span><el-table:data"datas"border>…

springer模板参考文献不显示

Spring期刊模板网站&#xff0c;我的问题是23年12月的版本 https://www.springernature.com/gp/authors/campaigns/latex-author-support/see-where-our-services-will-take-you/18782940 参考文献显示问好&#xff0c;在sn-article.tex文件中&#xff0c;这个sn-mathphys-num…

如何解决线程安全问题(synchronized、原子性、产生线程不安全的原因,锁的特性,加锁的方式等等干货)

文章目录 &#x1f490;线程不安全的示例&#x1f490;锁的特性&#x1f490;产生线程不安全的原因&#xff1a;&#x1f490;加锁的三种方式 &#x1f490;线程不安全的示例 对于线程安全问题&#xff0c;这里用一个例子进行讲解&#x1f447;&#xff1a; 我现在定义一个变…

网络安全是什么

网络安全是一种保护计算机、服务器、移动设备、电子系统、网络和数据免受恶意攻击的技术&#xff0c;这种技术也称为信息技术安全或电子信息安全。该术语适用于从业务到移动计算的各种环境&#xff0c;可以分为几个常见类别: 网络安全是一种保护计算机网络免受入侵者&#xff0…

mysql5.7配置主从

原理&#xff1a; MySQL主从复制的工作原理如下:1. 主服务器产生Binlog日志当主服务器的数据库发生数据修改操作时,如INSERT、UPDATE、DELETE语句执行,主服务器会记录这些操作的日志信息到二进制日志文件中。2. 从服务器读取Binlog日志 从服务器会向主服务器发送请求,主服务器把…