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余佳源 第五章 系统调用 操作系统中,内核提供了用户进程与内核进行交互的一组接口.这些接口让应用程序受限 ...
随机推荐
- android 向SD卡写入数据
原文:android 向SD卡写入数据 1.代码: /** * 向sdcard中写入文件 * @param filename 文件名 * @param content 文件内容 */ public v ...
- wx
wx The classes in this module are the most commonly used classes for wxPython, which is why they hav ...
- Log4Net不生成日志文件
可能没有初始化配置,在Global文件Application_Start添加 log4net.Config.XmlConfigurator.Configure(); 或者输出日志进行初始化,如(Log ...
- workspace & subProject & target
workspace & subProject & target http://blog.itpub.net/12231606/viewspace-1079867/ 最近新入一个项目组, ...
- C# 创建数组的几种方法
第一种 string[] myArray=new string[10]; 第二种 string[] myArray={"1","2"}; 第三种 string[ ...
- Oracle错误ORA-03113: end-of-file on communication channel处理办法
oracle不能启动了,报错ORA-03113: end-of-file on communication channel (通信通道的文件结尾) 解决办法: SQL> startup ORAC ...
- Linux学习之wget命令
Linux系统中的wget是一个下载文件的工具,它用在命令行下.对于Linux用户是必不可少的工具,我们经常要下载一些软件或从远程服务器恢复备份到本地服务器.wget支持HTTP,HTTPS和FTP协 ...
- java web项目修改项目名称
前几天在网上下了个项目,感觉名字长,所以想把项目改名字. 把项目导入到myeclipse中,将项目改名后, 还需要选中项目右键,properties ,修改项目的Context Root的名字.
- Android中Dialog对话框
布局文件xml: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns ...
- Android ORM SQL Top 5
If you are developing an Android application, you will likely need to store data somewhere. You may ...