【C++】(一)C++入门第一课
本文内容目录
- 一,编程环境
- 二,新建项目
- 三,变量和常量
- 四,数据类型
- 五,运算符
- 5.1 算术运算符
- 5.2 赋值运算符
- 5.3 比较运算符
- 5.4 逻辑运算符
- 六,其他
- 6.1 关键字汇总
- 6.2 数据输入和输出
- 6.3 注释
一,编程环境
系统环境:Microsoft Windows 版本 20H2(专业版)64位
开发工具:Microsoft Visual Studio 2019 社区中文版(其他工具DeV C++、CLion、C-Free、Xcode、C4droid也可以,看个人习惯)
下载地址:https://visualstudio.microsoft.com/zh-hans/downloads/(其他的IDE也是一样)
编译器工作流程:源代码(source code)->预处理器(preprocessor)->编译器(compiler)->目标代码(object code)->链接器(Linker)->可执行程序(executables)
关于编译器版本:https://www.cnblogs.com/icmzn/p/5911661.html
二,新建项目
在VS中建立第一个项目。
点击 - > 【文件】->【新建】-> 【项目】->【空项目】
【视图】->【工具栏】->【自定义】中可以自定义显示的视图。
三,变量和常量
【变量】作用是给一段内存命名,方便操作这段内存。定义变量的语法是数据类型 变量名 = 初始值
。(在创建变量时,必须给变量一个初始值,否则会报错)。
变量的命名规则:
- 标识符不能是关键字
- 标识符只能由字母、数字、下划线组成
- 第一个字符必须为字母或下划线
- 标识符中字母区分大小写
【常量】用于记录程序中不可改变的数据。
#define宏定义和const定义常量的区别和联系?
1.define无类型,不进行安全检查,可能会有一些想不到的错误发生,导致边缘效应
【边缘效应】#define N 2+3, N 的值是 5,
double a; a = (float)N/(float)2;
在编译时我们预想 a=2.5,实际打印结果是 3.5 原因是在预处理阶段,编译器将 a=N/2 处理成 a=2+3/2,这就是边缘效应。
所给出的还是一个立即数,预处理时只是进行简单的字符串替换,会把所定义的常量值和所定义的常量的名字联系起来。在预处理阶段进行替换。预处理后占用代码段空间,不分配内存,给出的是立即数,有多少次使用就进行多少次替换,在内存中会有多个拷贝,消耗内存大
2.const有数据类型,在编译的时候会进行类型检查。本质上还是该类型,占用空间大小和数据的类型一样。在编译的时候确定值得。用数据段空间,在静态存储区中分配空间,在程序运行过程中内存中只有一个拷贝。
四,数据类型
数据类型的作用是为了更好地解决计算机对数据的存储和运算问题。就相当于是一种容器,每个容器都有大小之区分。如果总是用大号容器的装少量的水,就会造成资源浪费。如果用大量的水放在小号的容器,就会造成水的“满出”。
各个数据类型的取值范围:
数据类型 | 占用空间 | 取值范围 |
---|---|---|
short(短整型) | 2字节 | (-2^15 ~ 2^15-1) |
int(整型) | 4字节 | (-2^31 ~ 2^31-1) |
long(长整形) | Windows为4字节,Linux为4字节(32位),8字节(64位) | (-2^31 ~ 2^31-1) |
long long(长长整形) | 8字节 | (-2^63 ~ 2^63-1) |
float | 4字节 | 7位有效数字 |
double | 8字节 | 15~16位有效数字 |
char | 1字节 | |
bool | 1字节 |
在不知道数据类型所占的空间大小时,可以使用sizeof关键字
统计一个数据类型所占的字节大小。
int main()
{cout << "int 类型所占内存空间为: " << sizeof(int) << endl;cout << "long long 类型所占内存空间为: " << sizeof(long long) << endl;system("pause");return 0;
}
五,运算符
作用:用于执行代码的运算。
C++中所有的运算符可以归为以下几类:
分类 | 作用 |
---|---|
算术运算符 | 处理四则运算 |
赋值运算符 | 用于将表达式的值赋给变量 |
比较运算符 | 用于表达式的比较,返回一个true,false |
逻辑运算符 | 用于根据表达式的值返回真值或假值 |
5.1 算术运算符
处理四则运算
notice: 在除法运算中,除数不能为0
5.2 赋值运算符
表达式的值赋给变量
主要包含以下几种符号。
5.3 比较运算符
用于表达式的比较,并返回一个真值或假值
5.4 逻辑运算符
用于根据表达式的值返回真值或假值
六,其他
6.1 关键字汇总
关键字是C++中预先保留的单词(标识符)。定义变量或常量的时候,不能使用关键字
所有关键字如下:
auto | double | inline | short | typeid |
---|---|---|---|---|
bool | dynamic_cast | int | signed | typename |
break | else | long | sizeof | union |
case | enum | mutable | static | unsigned |
catch | explicit | namespace | static_cast | using |
char | export | new | struct | virtual |
asm | do | if | return | typedef |
class | extern | operator | switch | void |
const | false | private | template | volatile |
const_cast | float | protected | this | wchar_t |
continue | for | public | throw | while |
default | friend | register | true | |
delete | goto | reinterpret_cast | try |
6.2 数据输入和输出
int main(){//整型输入int a = 0;cout << "请输入整型变量:" << endl;cin >> a;cout << a << endl;system("pause");return EXIT_SUCCESS;
}
6.3 注释
作用:在代码中加一些说明和解释,方便自己或其他程序员程序员阅读代码
两种格式
- 单行注释:
// 描述信息
- 通常放在一行代码的上方,或者一条语句的末尾,对该行代码说明
- 多行注释:
/* 描述信息 */
- 通常放在一段代码的上方,对该段代码做整体说明
加一些说明和解释,方便自己或其他程序员程序员阅读代码
两种格式
- 单行注释:
// 描述信息
- 通常放在一行代码的上方,或者一条语句的末尾,对该行代码说明
- 多行注释:
/* 描述信息 */
- 通常放在一段代码的上方,对该段代码做整体说明
【C++】(一)C++入门第一课相关推荐
- Opencv入门第一课打开窗口
Opencv入门第一课打开窗口 一.如何打开图片(代码解释如下) Mat src = imread("D:/images/lena.jpg"); 解释:imageread图片读取 ...
- 人工智能入门第一课:手写字体识别及可视化项目(手写画板)(mnist)
人工智能入门第一课:手写字体识别及可视化项目(手写画板)(mnist),使用技术(Django+js+tensorflow+html+bootstrap+inspinia框架) 直接上图,项目效果 1 ...
- 【C++】入门第一课
文章目录 C++入门第一课 1. C++发展简史 2.C++关键字 3.C++运行环境 4.C++头文件以及输入输出 4.1 头文件 4.2输入输出 5.命名空间(namespace) 5.1命名空间 ...
- janusgraph 引入 java_JanusGraph入门第一课和官方文档踩坑
入门第一课是在IDEA里创建一个项目,有些小曲折.这里运行的Demo是读取janusgraph示例的"神之图"(Graph of the Gods)数据并打印,采用Hbase+ES ...
- 摩托入门第一课[老猫]
摩托入门第一课 老猫 2001-02-24 早就想给新入门的摩托朋友写一点东西了,因为自己当初也是那么的一脸茫然.想不出什么好的题目,就用了"第一课"的字眼,希望读者老兄不要介意. ...
- 大数据入门第一课 Hadoop基础知识与电商网站日志数据分析
大数据入门第一课 Hadoop基础知识与电商网站日志数据分析 本课程从Hadoop核心技术入手,以电商项目为依托,带领你从0基础开始上手,逐步掌握大数据核心技术(如:HDFS.YARN.MapRedu ...
- C#编程入门第一课 Visual studio 2019使用,cs文件构成,打开项目文件,两句最简单语句,运行前,运行程序,显示行号,设置字体
C#编程入门第一课 文章目录 C#编程入门第一课 1 2 3 Visual Studio 2019 4. cs文件构成 5. 打开项目文件 6. 两句最简单语句 7. 运行前 8.运行程序 9.显示行 ...
- Linux运维工程师入门第一课-赵永刚-专题视频课程
Linux运维工程师入门第一课-75人已学习 课程介绍 本课程包含许多工作中会遇到的问题及解决方案,解决大家工作当中遇到的问题.非常适合刚刚入门的同学来学习linux基础入门. 本课程 ...
- python编程入门第一课_python入门前的第一课 python怎样入门
人工智能时代的到来,很多文章说这么一句:"不会python,就不要说自己是程序员",这说的有点夸张了,但确实觉得目前python这个语言值得学习,而且会python是高薪程序员的必 ...
- NXP KW38蓝牙开发(一)入门第一课:官网蓝牙广播和连接例程,NMI禁止
首先要下载开发使用的IDE:MCUXpresso IDE 下载链接: 进入nxp的官网,搜索KW38 向下翻看,找到Xpresso,点击进入 习惯使用IAR开发的同学也可以下IAR版本,这里以Xpre ...
最新文章
- J2EE学习笔记三:EJB基础概念和知识 收藏
- java上传+限制单文件,VereMVC 之 单文件上传
- 操作系统都是用c语言写的吗,用C语言写关于操作系统的一个问题。
- Python列表解析式,还支持异步?你知道吗?
- Exchange 2013 邮箱管理
- 区块链技术核心概念与原理讲解-Tiny熊
- 自动化测试——接口测试——增删改查
- fft_fft_control
- 动词变名词的变化规则_动词变名词的变化规则例子
- 宣布造车后股价上演“过山车”,开心汽车如意算盘恐落空
- 【前端面试】04 HTTP协议
- error: redefinition of ‘xxx’问题的解决
- 多组两两比较用什么检验方法_手把手教你多组独立样本的非参数检验及两两比较...
- ios 日志系统 lumberjack
- OC 技术 原生地图(源码)
- 图论(四)最短路算法Dantjig的实现
- mac备份_备份Mac的最佳方法
- scapy python3_【Python3黑帽子学习笔记 on Mac】第四章 Scapy:网络的掌控者
- 如何使IIS7支持ASP
- 申请iso27000认证是什么认证?