C++从freshman到老油条(1)——基础知识
引言
编程这事是我大一上学期开始接触的,学校开设了一门课程叫做《高级语言程序设计》。当时学的时候非常吃力,因为是从C语言开始学的,很多东西都不知道,身边的同学高中甚至初中的时候就接触过,不过经过一学期的努力,最后这门课程还是考的相当不错。
那为什么我要写关于C++的文章,而不是C语言的。主要是因为,我现在基本不用C语言,其次的话C++很多东西解释起来很清楚。不过在C语言中特别重要的知识点我还是会讲的。
所有的知识我想分为:基本语法、面向对象、数据结构、算法设计 四个大的板块来讲。
那么废话不多说,直接开始,每节的重点通过加粗或者更改颜色的方式展现。
数据类型
首先数据分为常量和变量。
数据类型大致有以下几种:整型、浮点型、字符型、自定义类型。
你用的最多的一般是:基本整型(int)、单精度浮点型(float)、双精度浮点型(double)、字符型(char)。
int 你可以理解为整数,float 你可以理解为精度低一点的小数,double 理解为精度高一点的小数,char 就是你键盘上的英文字母,符号等等。
如果出现了你的数很大(2的100次方)或者给你的空间较小(给你两个字节),此时你需要加long或者short进行调整,类型所占大小、具体的数范围和调整方式这里不介绍了,想知道的自己查找一下资料,因为常用的就是上面说的四种类型。
讲解了基本的数据类型,接下来就要学会定义。
#include <iostream>
using namespace std;int main()
{int a;double b=3.14;char c='t';return 0;
}
在上面例子中
你定义了一个整型变量a,他没有初始值。
你定义了一个双精度浮点型变量b,并且给他初始化为3.14,注意这里不是赋值,赋值在基本运算符中会讲到。这里的3.14就是一个常量。
你定义了一个字符型变量c,并且给他初始化为字符t。
变量之间不要重名。
基本运算符
C++中所有的运算通过运算符实现。
①代数运算符
首先是四则运算符:加法(+)、减法(-)、乘法(*)、除法(/)。
取余运算符(%),比如10除以3,商3,余1。那么10%3的结果就是1。
注意在除法中:
如果是一个整型除以一个整型,那么结果是商。整型10除以整型3,得到结果是整型的3。
如果是一个浮点型除以一个实型,那么结果是较精确的结果。浮点型10除以整型3,得到的结果是浮点型的3.33333。
下面给出代码示例
#include <iostream>
using namespace std;int main()
{int a=10;double b=10;int c=3;cout<<a/c<<endl<<b/c<<endl;return 0;
}
对于其他的运算,类型不同的数相加减,乘法都没有什么影响,唯独除法是个例外。
②关系运算符
常见的关系运算符有:
等于(==)
不等于(!=)
大于(>)
大于等于(>=)
小于(<)
小于等于(<=)
与(&&)
或(||)按住shift键之后,按enter键右上方的那个键,得到‘|’
非(!)
③赋值运算符(=)
当你想把一个常量赋值给一个变量或者把一个变量的值赋给另一个变量,你需要用到赋值运算符。
比如:
#include <iostream>
using namespace std;int main()
{int a;a=5;int b;b=a;int c=9;return 0;
}
这里首先定义一个变量a,然后将5赋值给了a,所以a此时的值是5.。
其次定义了一个变量b,然后将a的值赋给了b,所以此时b的值等于a的值,所以b也是5。
最后定义了一个变量c,并且初始化为9,这里没有进行赋值,你能看懂这是为什么么?
因为运算过程是独立的一条代码,它只包含操作的数和运算符,比如说a<b,r==5,a+b,运算符前面不会跟任何的数据类型。a=5这条语句是独立的,因此他是运算符。
而一旦是在定义的时候有 ‘=’ ,你应该理解为将它进行初始化,这个在后面的面向对象中拷贝构造会是一个坑。所以在学基础的时候就要弄清楚 '=' 是具有两层含义,分别是 赋值运算符 和 定义时的初始化。
程序的输入和输出
程序的输入通过cin来实现。
程序的输出通过cout来实现。
#include <iostream>
using namespace std;int main()
{int a;cin>>a;cout<<a;return 0;
}
如果你想连续读取可以
cin>>a;
cin>>b;
或者
cin>>a>>b;
同样的,如果你想输出也可以
cout<<a;
cout<<b;
cout<<a<<b;
如果你想输出换行就
cout<<endl;
C++从freshman到老油条(1)——基础知识相关推荐
- 嵌入式Linux的OTA更新,基础知识和实现
嵌入式Linux的OTA更新,基础知识和实现 OTA updates for Embedded Linux, Fundamentals and implementation 更新的需要 一旦嵌入式Li ...
- 计算机基础知识第十讲,计算机文化基础(第十讲)学习笔记
计算机文化基础(第十讲)学习笔记 采样和量化PictureElement Pixel(像素)(链接: 采样的实质就是要用多少点(这个点我们叫像素)来描述一张图像,比如,一幅420x570的图像,就表示 ...
- 嵌入式linux编程,嵌入式Linux学习笔记 - 嵌入式Linux基础知识和开发环境的构建_Linux编程_Linux公社-Linux系统门户网站...
注:所有内容基于友善之臂Mini2440开发板 一.嵌入式Linux开发环境的构建 嵌入式开发一般分为三个步骤: 1.编译bootloader,烧到开发板 2.编译嵌入式Linux内核,烧到开发板 3 ...
- 《计算机网络应用基础》模拟试卷(六),《计算机与网络应用基础知识1》模拟试卷...
<计算机与网络应用基础知识1>模拟试卷 (4页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 <计算机与网络应用基础知识1& ...
- python向量计算库教程_NumPy库入门教程:基础知识总结
原标题:NumPy库入门教程:基础知识总结 视学算法 | 作者 知乎专栏 | 来源 numpy可以说是 Python运用于人工智能和科学计算的一个重要基础,近段时间恰好学习了numpy,pandas, ...
- python常用变量名_python基础知识整理
Python Python开发 Python语言 python基础知识整理 序言:本文简单介绍python基础知识的一些重要知识点,用于总结复习,每个知识点的具体用法会在后面的博客中一一补充程序: 一 ...
- 计算机基础知识掌握欠缺,《计算机基础知识》实验教学改革探讨.pdf
<计算机基础知识>实验教学改革探讨.pdf Science& TechnologyVision 科 技 视 界 科技 探·索·争鸣 计<算机基础知识>实验教学改革探讨 ...
- python计算wav的语谱图_Python实现电脑录音(含音频基础知识讲解)
前言 今天开始进入近期系列文章的第一篇,如何用 Python 来实现录音功能. 在开始"造轮子"之前,个人一直强调一个观点,如果有些东西已经有了,不妨直接去 github 上搜,用 ...
- 计算机wrod初级考试题及答案,计算机基础知识+Word基础知识+Excel基础知识试题答案解析.doc...
文档介绍: 计算机基础知识+ Word基础知识+ Excel基础知识 第一部分 一.单项选择题 1.世界上第一台电子数字计算机取名为( ). A.UNIVAC B.EDSAC C.E ...
- java 前端基础知识_【计算机·知识】关于前端的计算机基础知识
原标题:[计算机·知识]关于前端的计算机基础知识 作为一个刚刚入门的程序猿,你是否对专业知识有足够的了解?今天新闻君带你走进前端的世界. 前端的语言接触起来相对于后端的语言要容易不少,但前端的语言也有 ...
最新文章
- java 遍历file_JAVA File类(文件的遍历,创建,删除)
- 全栈JVM框架Micronaut通向1.0版本之路
- Spring事务失效的 8 大原因,这次可以吊打面试官了!
- Neo4j实战 (数据库技术丛书)pdf
- C语言中main函数的研究,以及对代码断点调试的研究(王爽老师 汇编语言)
- .NET 6新特性试用 | TryGetNonEnumeratedCount
- static关键字 void和void指针 函数指针
- 【转】Linux的五个查找命令:find,locate,whereis,which,type
- 网站加载速度 优化_您肯定要优化网站的加载速度。 这是如何做。
- ACMMM 2021-多模态宝藏!京东梅涛团队重磅开源第一个适用于多个任务的多模态代码库x-modaler...
- 一用户使用LTC以168万美元的价格购入收藏界“圣杯“卡片
- 这个Wi-Fi安全漏洞偷跑了24年,可能危及全球所有设备!
- 为什么要有res/values/ids.xml(一个res/values/ids.xml引发的血案)
- 二、fragment使用
- 微型计算机原理与接口技术第五版pdf,微型计算机原理与接口技术(第5版)
- 电脑键盘快捷键使用大全
- 苹果数据线不能充电_去掉耳机和充电器,以后数据线苹果也不会送了
- 关于10的勾股数有哪些_关于“天风证券”“浪潮信息”的配股提示
- eclipse的安装和汉化
- 程序员工资大概组成【刚毕业的大学生看过来】
热门文章
- 声网Agora Lipsync技术剖析:通过实时语音驱动人像模拟真人说话
- tensorflow 1.12使用中的问题
- Backdoor.Trojan专杀工具
- antd 表格分页功能
- linux系统安装hba驱动,Linux系统上iSCSI HBA的安装和配置
- 中秋国庆长假,SEO你在坚持吗?
- Scroll View 滚动窗口
- Python 位运算
- 计算机的it入门知识点,基础乐理知识点电脑基础知识IT计算机专业资料-基础乐理知识点(5页)-原创力文档...
- 海纳百川 有容乃大, 壁立千仞 无欲则刚