C++学习笔记1(标准的输入输出)
前言:
个人一直以来比较懒,最近才准备记录一下自己学习C++的学习过程,希望自己能在写博客的时候能够坚持下去,欢迎大家在博客中支出存在的问题,好了不多说了,自己能坚持下去。我准备在我的博客中通过与C语言的对比能够了解C++的不同与优势,接下来进去正题,让我们走进C++的大门。
标准的输出
首先,在C++中用于标准的输入输出的头文件是#include<iostream>,大家可能也会发现直接使用这个头文件,是不能使用标准的输出cout的,那是应为cout是一个对象,类型是ostream类型,而iostream大家就可以看成是由istream与ostream合并在一起的。并且cout、cin等对象都是定义在标准的命名空间std中的,至于什么叫命名空间了,我在后续的课程中会陆续的讲到的,大家现在可以理解成一种作用域就可以了。
好了,我们先来看一个最简单的helloworld程序:
#include <iostream> //标准的输入输出头文件
using namespace std; //包含标准的命名空间std :<stdardard> /*
main函数同C语言中的主函数一样,一个程序运行的入口,
一个程序有且仅能够有一个主函数
*/
int main(int argc, char **argv)
{
/*C++ 中用于标准的输出同C语言的printf函数功能一致*/
/*cout:标准的ostream类型对象,endl:和转义字符'\n'功能类似*/
cout << "hello world" << endl;
getchar();
return ;
}
输出结果:
hello world
最简单的一个C++程序就写完了,还是简单吧,和C语言作一个对比,实际上的差距不是很大,首先头文件的格式,在C++中是没有.h结尾的,再次要使用标准的输出使用的是cout对象,而C语言使用的是系统的库函数printf(),并且在C++中使用cout对象必须使用标准的命名空间std,这是需要注意的,还有在C++中重载运算符<<,可以用于对象的输出,至于不知道什么叫运算符重载,你大概可以当做这个运算符具备了多个功能吧。
接下来我们看一下如何在C++中输出变量,还记得我们在C语言中是如何输出的吗,我们使用到了printf库函数的格式化字符串做输出,通过格式占位符来输出不同的数据类型是吧,比如:
int %d
short %d
long %ld
float %f
double %lf
char %c
在C++中输出变量是很简单的,只需要使用cout进行输出就可以了,不需要知道什么类型(除基本类型,其他类型必须重载运算符<<),那我们来看看如何输出变量
#include <iostream> //标准的输入输出头文件
using namespace std; //包含标准的命名空间std :<stdardard> int main(int argc, char **argv)
{
int vi = ;
double vd = 3.14;
char vc = 'Z'; //分别输出三个变量的值
cout << "vi: " << vi << endl;
cout << "vd: " << vd << endl;
cout << "vc: " << vc << endl; return ;
}
输出结果:
vi:
vd: 3.14
vc: Z
是不是和 语言比较起来简单多了,不,你没有看错,就是这么简单。
标准的输入
其实了解了C++中标准的输出问题,再来看,标准的输入就简单多了,应为他和标准的输出格式时一样的,只是使用的时cin而不是cout用做输入。还是一个简单的例子看一下:
#include <iostream> using namespace std; int main(int argc, char *argv[])
{
int vi = ;
double vd = 3.14;
char vc = 'Z'; //分别输出三个变量的值
cout << "vi: " << vi << endl;
cout << "vd: " << vd << endl;
cout << "vc: " << vc << endl; //修改三个变量的值
//标准的读取,可以标准的读取一个变量的值,
//也可以连续读入多个变量注意后边不要加叫endl
cin>>vi;
cin>>vd>>vc; //分别输出三个变量的值
cout << "vi: " << vi << endl;
cout << "vd: " << vd << endl;
cout << "vc: " << vc << endl;
return ;
}
输出结果应该是:
vi:
vd: 3.14
vc: Z 3.14 a
vi:
vd: 3.14
vc: a
以上就大概讲述了C++中的标准的输入输出问题,当然关于C++的输入输出问题中,还有关于类似与C语言中的格式控制问题,我将再下一章专门就这一块的问题做讨论。
C++学习笔记1(标准的输入输出)的更多相关文章
- shell编程学习笔记之标准输入输出(read&echo)
2017-07-17 09:32:07 输入read: 用途: 从标准输入读取一行,或者从文件描述符FD(file descriptor)中读取一行,并且将其分割成字段. 用法: read [-ers ...
- C++ Primer学习笔记2--c++标准库中的 vector、string 和 bitset 类型
一.string #include <string> using std::string 初始化函数: string s1; 默认构造函数 s1 为空串 ...
- Linux System Programming 学习笔记(三) 标准缓冲I/O
1. partial block operations are inefficient. The operating system has to “fix up” your I/O by ensuri ...
- APUE 学习笔记(四) 标准I/O库
1.流与FILE对象 unix I/O系统调用都是针对文件描述符的 标准C的I/O函数都是针对流(文件指针)的,我们使用一个流与一个文件相关联 2.缓冲 标准I/O库提供缓冲的目的就是尽可能减少r ...
- C语言学习笔记---3.字符串格式化输入输出
1.C语言字符串 字符串(character string)是一个或多个字符的序列,例如:"Zing went the strings of my heart!" C语言没有专门用 ...
- Python核心编程--学习笔记--9--文件和输入输出
本章将深入介绍Python的文件处理和相关输入输出能力,包括:文件对象(以及它的内建函数.内建方法和属性),标准文件,文件系统的访问方法,文件执行,最后简要涉及持久存储和标准库中与文件有关的模块. 1 ...
- Python学习笔记六--文件和输入输出
6.1文件对象 所有Python对文件的操作都是基于对文件对象的操作.那么就从文件对象的创建说起.open()[file()]提供初始化输入输出的接口.open()成功打开文件时会返回一个文件对象. ...
- day2_python学习笔记_chapter4_标准类型和内建函数
1. 标准类型 Integer,Boolean, Long integer, Floating point real number, Complex number, String, List, Tup ...
- C++ Primer 学习笔记_6_标准库类型 -- 命名空间using与string类型
标准库类型(一) --命名空间using与string类型 引: 标准库类型是语言组成部分中更主要的哪些数据类型(如:数组.指针)的抽象! C++标准库定义的是高级的抽象数据类型: 1.高级:由 ...
- js学习笔记之标准库
在全局函数中,this等于window 在函数被作为某个对象的方法调用时,this等于那个对象. 数组的函数: 检测:Array.isArray() 转换:toString(),toLocalStr ...
随机推荐
- js实现浏览器添加收藏功能
今天搞项目的时候为了实现浏览者实现添加收藏的功能,特地了解了一下相关的API. 也看到了网上各种版本的代码.整理了一下,代码如下.简单易懂. <script> function _addF ...
- linux系统常用快捷键
centos 命令快捷键: 挂起:Ctrl+s 解除挂起:ctrl+q 清屏:Ctrl+l 注销或退出:Ctrl+d 命令行光标移动: Ctrl+a 移动到命令行首 Ctrl+e 移动到命令行尾 Ct ...
- am335x uboot2016.05 (MLO u-boot.img)执行流程
am335x的cpu上电后,执行流程:ROM->MLO(SPL)->u-boot.img 第一级bootloader:引导加载程序,板子上电后会自动执行这些代码,如启动方式(SDcard. ...
- KoaHub.JS基于Node.js开发的Koa 生成验证码插件代
ccap node.js generate captcha using c++ library CImg without install any other lib or software node- ...
- UI 自定义视图 ,视图管理器
一>自定义label - textField 视图 自定义视图:系统标准UI之外,自己组合而出的新的视图 iOS 提供了很多UI组件 ,借助它们,我们可以做各种程序 尽管如此,实际开发中,我们还 ...
- 【转】SDWebImage实现分析
该博文来自南峰子的技术博客,文章从下载和缓存俩个大的组件分析到里面一些核心方法的实现,条理清晰,相对于一些一上来就通篇分析实现思路的技术文章, 这篇的讲解思路明确,框架架构也讲的比较清楚.看完这篇再去 ...
- 撸一个Android高性能日历控件,高仿魅族
Android原生的CalendarView根本无法满足我们日常开发的需要,在开发吾记APP的过程中,我觉得需要来一款高性能且美观简洁的日历控件,觉得魅族的日历风格十分适合,于是打算撸一款. gith ...
- java学习笔记 --- java基础语法
一.java标识符,关键字,保留字 1.标识符 用来增强程序阅读性自定义的名字.类名,变量名,方法名等都可以被称为标识符 标识符的组成: 1.由数字(0-9),字母(a-z,A-Z),下划线(_),美 ...
- iOS开发之layoutSubviews
当发生下面两种情况该方法会被调用: (1)一个控件的frame发生改变的时候. (2)布局子控件的时候 一般在这里布局内部的子控件(设置子控件的frame) 例如: - (void)layoutSub ...
- ThinkPHP3.2.3版本验证码异步第二次验证时失败的问题解决
最近在用TP3.2.3做一个小项目,纠结于验证码验证问题,重点在于二次验证,举个例子就是常见的登录页面上有个验证码输入框,当用户输入验证码并且鼠标点击在这个输入框之外时候,触发onblur事件,然后a ...