标准输入

gets()

1
char * (char *str)

gets() 主要是从标准输入流读取字符串并回显,读到换行符时退出,并会将换行符省去。

返回值为获得的字符串的首地址。

1
2
3
char str[50] = {' '}; 
gets(str); //从标准输入流里获取一个字符串,不能写成m=gets();
puts(str);

cin>>

接受一个字符串,遇 空格、TAB、回车都会结束

1
2
cin >> a; //读一个字符串
cout << a; //输出一个字符串

cin.get()

  • cin.get(字符变量名) 可以用来接收字符
1
2
3
4
char ch;
ch = cin.get(); //读一个字符
//cin.get(ch); 等价
cout << ch << endl;

cin.get( 字符数组名, 接收字符数目)

用来接收一行字符串,可以接收空格

1
2
3
char a[20];
cin.get(a,20); //接收一串字符
cout << a << endl;

cin.getline()

接受一个字符串,可以接收空格并输出

1
2
3
char m[20];
cin.getline( m, 5);
cout << m << endl;

getline()

接受一个字符串,可以接收空格并输出

1
2
3
string str;
getline(cin,str);
cout << str << endl;

getchar()

1
2
3
char ch;
ch = getchar(); // 不能写成getchar(ch);
cout << ch << endl;

标准输出

puts()

大专栏  C++ 标准IOable>

puts() 主要是把字符串str写到标准流stdout中去,并会在输出到最后时添加一个换行符。

返回值为0表示正常,非零表示错误

1
int puts(char *str)
1
2
3
char str[50] = {' '}; 
gets(str);
puts(str); //将str写到标准输出流

###

格式化输出

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
int a;
cout << "input a:";
cin >> a; //以上进制形式输出整数
cout << "dec:" << dec << a << endl; //以十六进制形式输出整数a
cout << "hex:" << hex << a << endl; //以八进制形式输出整数a
cout << "oct:" << setbase(8) << a << endl; //pt指向字符串”China”
string pt= "China"; //指定域宽为10,输出字符串
cout << setw(10) << pt << endl; //指定域宽10,输出字符串,空白处以“*”填充
cout << setfill('*') << setw(10) << pt << endl; //计算pi值
double pi=22.0/7.0; //按指数形式输出,8位小数
cout << setiosflags(ios::scientific) << setprecision(8); //输出pi值
cout << "pi=" << pi << endl; //改为4位小数
cout << "pi=" << setprecision(4) << pi << endl; //改为小数形式输出,精度为4
cout << "pi=" << setiosflags(ios::fixed) << pi << endl; //fixed确定小数点后精度为4
cout << "pi=" << fixed << pi << endl;

C++ 标准IO的更多相关文章

  1. 深究标准IO的缓存

    前言 在最近看了APUE的标准IO部分之后感觉对标准IO的缓存太模糊,没有搞明白,APUE中关于缓存的部分一笔带过,没有深究缓存的实现原理,这样一本被吹上天的书为什么不讲透彻呢?今天早上爬起来赶紧找了 ...

  2. [APUE]标准IO库(下)

    一.标准IO的效率 对比以下四个程序的用户CPU.系统CPU与时钟时间对比 程序1:系统IO 程序2:标准IO getc版本 程序3:标准IO fgets版本 结果: [注:该表截取自APUE,上表中 ...

  3. [APUE]标准IO库(上)

    一.流和FILE对象 系统IO都是针对文件描述符,当打开一个文件时,即返回一个文件描述符,然后用该文件描述符来进行下面的操作,而对于标准IO库,它们的操作则是围绕流(stream)进行的. 当打开一个 ...

  4. 标准io与文件io

    A: 代码重复: 语句块1: while(判断) { 语句块2: 语句块1: } 上面可以改写为: while(1) { 语句块1: if(判断) break: 语句块2: } B: 标准IO和文件I ...

  5. linux标准IO缓冲(apue)

    为什么需要标准IO缓冲? LINUX用缓冲的地方遍地可见,不管是硬件.内核还是应用程序,内核里有页高速缓冲,内存高速缓冲,硬件更不用说的L1,L2 cache,应用程序更是多的数不清,基本写的好的软件 ...

  6. 【linux草鞋应用编程系列】_1_ 开篇_系统调用IO接口与标准IO接口

    最近学习linux系统下的应用编程,参考书籍是那本称为神书的<Unix环境高级编程>,个人感觉神书不是写给草鞋看的,而是 写给大神看的,如果没有一定的基础那么看这本书可能会感到有些头重脚轻 ...

  7. 文件IO函数和标准IO库的区别

    摘自 http://blog.chinaunix.net/uid-26565142-id-3051729.html 1,文件IO函数,在Unix中,有如下5个:open,read,write,lsee ...

  8. linux标准io的copy

    ---恢复内容开始--- 1.linux标准io的copy #include<stdio.h> int main(int argc,char **argv) { if(argc<3) ...

  9. (九)errno和perror、标准IO

    3.1.6.文件读写的一些细节3.1.6.1.errno和perror(1)errno就是error number,意思就是错误号码.linux系统中对各种常见错误做了个编号,当函数执行错误时,函数会 ...

  10. 标准IO的简单应用,动静态库,读取系统时间并打印,模拟ls -l功能

    2015.2.27星期五,小雨 标准IO实现的复制功能: #include <stdio.h>#include <errno.h> #define N 64 int main( ...

随机推荐

  1. poj2243前一道题升级(思维构造+ac自动机)

    题:http://acm.hdu.edu.cn/showproblem.php?pid=2243 题意:给出m个模式串,求长度小于n的且存在模式串的字符串数有多少个(a~z) 分析:我们反着来,用总的 ...

  2. python学习笔记-函数与可变长参数

    一.函数 1. def test(x): y=x+1 return yprint(test) #这是打印函数在内存中的地址 过程:就是没有返回值的函数 在python中过程也是函数,就算没哟返回值,也 ...

  3. openvino资源

    Intel OpenVINO介紹及樹莓派.Linux的安裝 https://chtseng.wordpress.com/2019/01/21/intel-openvino%E4%BB%8B%E7%B4 ...

  4. html页面监听事件

    今天有个需求,类似以下: <div id="a"> <input name="yinzhangfenlei" id="yinzhan ...

  5. protobuf编译工具使用

    1.下载,配置环境变量 下载地址:https://github.com/google/protobuf/releases,选择protoc-xxx-win64.zip下载 把.exe文件的位置加入到P ...

  6. cf1172E Nauuo and ODT(LCT)

    首先可以转化问题,变为对每种颜色分别考虑不含该颜色的简单路径条数.然后把不是当前颜色的点视为白色,是当前颜色的点视为黑色,显然路径数量是每个白色连通块大小的平方和,然后题目变为:黑白两色的树,单点翻转 ...

  7. 2017年3月16工作日志【mysql更改字段参数、java8 map()调用方法示例】

    修改某个表的字段类型及指定为空或非空 >alter table 表名称 change 字段名称 字段名称 字段类型 [是否允许非空],变更字段名称及属性 >alter table 表名称 ...

  8. shell并行处理

    for i in (file1 file2 file3), do process_a $i | tee process_a $i_a.txt | process_b > $i_b.txt &am ...

  9. Java之关键字abstract(抽象类与抽象方法)

    /* * abstract关键字的使用 * 1.abstract:抽象的 * 2.abstract可以用来修饰的结构:类.方法 * * 3. abstract修饰类:抽象类 * > 此类不能实例 ...

  10. maven隐含依赖

    1.有时候,我们在pom.xml依赖了2个jar包,不过在工程lib里看到依赖包多于2个,这是为什么呢?原因是maven引入一个jar时,会连带引入这个jar包依赖的jar包,除非在配置引入这个jar ...