标准输入

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. Android通过包名打开第三方应用

    import android.content.ComponentName; import android.content.Context; import android.content.Intent; ...

  2. UML-迭代1-基础

    1.原则 1).拆分成多个按时间定量.风险驱动的迭代(细化1.细化2.细化3.细化4) 2).在多个迭代中,对同一用例增量开发. 2.最佳实践 设计人员:对架构的核心和风险做适当设计.实现和测试 研发 ...

  3. sqlserver修改某列为自增

    sqlserver如果建表的时候不设自增,之后是没法直接修改的,需要先删再重设: alter table 表名 drop column ID alter table 表名 add ID int ide ...

  4. Hard Disk Drive(MBR)

    这里讲的主要是网上所谓的老式磁盘,它是由一个个盘片组成的,我们先从个盘片结构讲起.如图1所示,图中的一圈圈灰色同心圆为一条条磁道,从圆心向外画直线,可以将磁道划分为若干个弧段,每个磁道上一个弧段被称之 ...

  5. VS Code之Vue开发常用插件

    Auto Close Tag 自动补全html标签 Auto Rename Tag 同步更改html尾标签 ESLint ESlint语法提示 settings.json 文件 "eslin ...

  6. Mutation|DNM|

    生命组学 DNA序列改变的分子基础 变异来源 据研究对象,可分为两类mutation:个体上的变异和群体上的变异,群体上的变异是关联研究,eg喝酒人群vs非喝酒人群相比. 造成mutation的三类机 ...

  7. 再来看看Java8的新特征——lambda表达式

    什么是lambda表达式? 可以把Lambda表达式理解为简洁地表示可传递的匿名函数的一种方式:它没有名称,但它有参数列表.函数主体.返回类型,可能还有一个可以抛出的异常列表. 比如说new一个Thr ...

  8. 关于Apache Commons-IO的使用

    commons-io是一款处理io流的工具,封装了很多处理io流和文件的方法,可以大大简化我们处理io流和操作文件的代码.从common-io的官方使用文档可以看出,它主要分为工具类.尾端类.行迭代器 ...

  9. CF-595

    题目传送门 A .Yet Another Dividing into Teams sol:原先是用比较复杂的方法来解的,后来学弟看了一眼,发现不是1就是2,当出现两个人水平相差为1就分成两组,1组全是 ...

  10. 《C程序设计语言》练习 1-6,1-7

    #include<stdio.h> /*验证表达式getchar()!=EOF的值是0还是1*/ main () { int c; c=getchar()!=EOF; printf(&qu ...