C++ Primer 读书笔记 第1章
1.1 编写简单的C++程序
每个C++程序都必须包含一个main函数,因为main函数是系统执行入口,且main函数是唯一被系统显示调用的函数。
定义函数必须指定4个元素:返回类型、函数名、形参表、函数体。
main函数的形参个数是有限的。
返回值类型必须和函数的返回类型相同,或者可以转换为函数的返回类型。
1.2 偷窥输入输出
iostream库的基础是istream(输入流)和ostream(输出流)的类型。
流:指从某种IO设备上读入或写出的字符序列。
1.2.1 标准输入与输出对象
标准库定义了4个IO对象
l cin:标准输入,处理输入;
l cout:标准输出,处理输出;
l cerr:标准错误,输出警告和错误信息给程序使用者;
l clog:用于产生程序执行的一般信息;
1.2.2 一个使用IO库的程序
应用实例:
#include<iostream>
using namespace std;
int main()
{
std::cout<< "请输入?"<<std::endl;
int v1,v2;
std::cin>>v1>>v2>>std::endl;
std::cout<<"用户输入了:"<<v1<<"and"<<v2<<std::endl;
}
这里std::表示是在std这个命名空间下
std::endl是个特殊值,称为操纵符(manipulator):具有输出换行效果,并刷新与设备相关的缓冲区(buffer)。通过刷新缓冲区,输入输出会立刻生效,输出的内容会立刻被呈现在屏幕或文件上。
由于这些功能属于标准库而不是内置类型,故使用前必须导入对应的库#include<iostream>
使用标准库中的名字
Std::cout和std::endl的前缀std::表明cout和endl是定义在命名空间(namespace)std中的。
优点:使用命名空间,程序员可避免由于无意中是用来与库中所定义名字相同的名字而引致冲突。
1.3 注释
类或者代码块的说明以/*开头,以*/结束,可跨行;单行注释用//。
通常最好将一个注释块放在所解释代码的上方。
注释不可以嵌套。
1.4 控制结构
1.4.1 while语句
1.4.2 for语句
1.4.3 if语句
1.4.4 读入未知数目的输入
可以通过while和std::cint的结合读取多个内容,代码如下:
#include <stdlib.h>
#include<iostream>
using namespace std;
int main()
{
int sum = 0, value;
while (std::cin>>value)//输入非整形字符时退出循环
{
sum += value;
}
std::cout<<"Sum is:"<<sum<<std::endl;
system("pause");//用来使显示屏停顿,需用库<stdlib.h>
return 0;
}
while (std::cin>>value)为判断条件,先执行输入操作std::cin>> value。它从标准输入读取下一个数并且将读入的值保存在value中。输入操作符返回其左操作数。While条件测试输入操作符的返回结果,即测试std::cin。
当用istream对象作为条件,结果是测试流的状态。若流是有效,则测试成功。遇到文件结束符(EOF)或无效输入(如非整数的值)时,则istream对象无效,此时条件失败,跳出循环。
1.5 类的简介
C++中类型分为内置类型和类类型,类属于类类型。
1.6 C++程序
C++ Primer 读书笔记 第1章的更多相关文章
- C++ Primer 读书笔记 第2章 变量和基本类型
C++ Primer 第二章 变量和基本类型 2.1 基本内置类型 C++定义了一组表示整数.浮点数.单个字符和布尔值的算术类型(arithmetic type),此外还定义了Void类型. 算术类型 ...
- 《Linux内核设计与实现》第八周读书笔记——第四章 进程调度
<Linux内核设计与实现>第八周读书笔记——第四章 进程调度 第4章 进程调度35 调度程序负责决定将哪个进程投入运行,何时运行以及运行多长时间,进程调度程序可看做在可运行态进程之间分配 ...
- 《Linux内核设计与分析》第六周读书笔记——第三章
<Linux内核设计与实现>第六周读书笔记——第三章 20135301张忻估算学习时间:共2.5小时读书:2.0代码:0作业:0博客:0.5实际学习时间:共3.0小时读书:2.0代码:0作 ...
- 《Linux内核设计与实现》 第八周读书笔记 第四章 进程调度
20135307 张嘉琪 第八周读书笔记 第四章 进程调度 调度程序负责决定将哪个进程投入运行,何时运行以及运行多长时间,进程调度程序可看做在可运行态进程之间分配有限的处理器时间资源的内核子系统.只有 ...
- 《Linux内核分析》读书笔记(四章)
<Linux内核分析>读书笔记(四章) 标签(空格分隔): 20135328陈都 第四章 进程调度 调度程序负责决定将哪个进程投入运行,何时运行以及运行多长时间,进程调度程序可看做在可运行 ...
- 《LINUX内核设计与实现》第三周读书笔记——第一二章
<Linux内核设计与实现>读书笔记--第一二章 20135301张忻 估算学习时间:共2小时 读书:1.5 代码:0 作业:0 博客:0.5 实际学习时间:共2.5小时 读书:2.0 代 ...
- 《Linux内核设计与实现》第四周读书笔记——第五章
<Linux内核设计与实现>第四周读书笔记--第五章 20135301张忻 估算学习时间:共1.5小时 读书:1.0 代码:0 作业:0 博客:0.5 实际学习时间:共2.0小时 读书:1 ...
- 《Linux内核设计与实现》第五周读书笔记——第十一章
<Linux内核设计与实现>第五周读书笔记——第十一章 20135301张忻 估算学习时间:共2.5小时 读书:2.0 代码:0 作业:0 博客:0.5 实际学习时间:共3.0小时 读书: ...
- 《Linux内核设计与实现》读书笔记——第五章
<Linux内核设计与实现>读书笔记--第五章 标签(空格分隔): 20135321余佳源 第五章 系统调用 操作系统中,内核提供了用户进程与内核进行交互的一组接口.这些接口让应用程序受限 ...
随机推荐
- fragment中listview触发事件setOnItemClickListener不好使
<listView/>中// listview点击 ,高度wrap_content改成fill_prarent
- elasticsearch 索引 类型 id
zjtest7-frontend:/usr/local/logstash-2.3.4/config# cat logstash_indexer01.conf input { redi ...
- setInterval和setTimeout的使用区别
setTimeout和setInterval的使用 这两个方法都可以用来实现在一个固定时间段之后去执行JavaScript.不过两者各有各的应用场景. 方 法 实际上,setTimeout和setIn ...
- web中使用扫描枪
扫描枪实际上就是一输入设备,只不过它每次在输入的内容后面添加一个回车.因此在web中可以使用js监听回车事件.处理代码如下: jQuery(function() { jQuery(doc ...
- C# 类型的创建
类 类是最普通的引用类型,最简单的声明如下所示: class YourNameClass { } 更复杂的类可以拥有以下这些选项: 置于关键字class前面的:属性(attributes)与class ...
- ZOJ3784 String of Infinity 高大上的AC自动机 数据原来这么水啊!不算输入输出只有5-7行
找给定s集合里面word全部是同一个字符的,这样的word有几个,如果数量<m就yes,否则就no.#include<iostream> #include<cstring> ...
- JS 把 Wed Jul 15 2015 00:00:00 GMT+0800 转换成2015-07-15
function strlen(str) { var len = 0; for (var i = 0; i < str.length; i++) { var c = str.charCodeAt ...
- JAVA 初识类加载机制 第13节
JAVA 初识类加载机制 第13节 从这章开始,我们就进入虚拟机类加载机制的学习了.那么什么是类加载呢?当我们写完一个Java类的时候,并不是直接就可以运行的,它还要编译成.class文件,再由虚拟机 ...
- win7 64位系统调试zkemkeeper.dll出错误解决
最近调用中控科技dll文件总是会出现上问题,网上找了大半天都没解决? 今天终于解决,原来是旧的dll文件是有问题,在中控网站上下载了最新的sdk(64位),解压,找到sdk的全部文件夹. 全选所有的: ...
- JSP基础——关于中文乱码问题
乱码问题十分烦人,今天在写一个登陆的demo时,表单中需要提交的中文姓名,如下代码 <form action="success.jsp" name="success ...