C++语言中cin cin.getline cin.get getline gets getchar 的用法实例
#include <iostream>
#include <string>
using namespace std;
//关于cin cin.getline cin.get getline gets getchar 的用法实例
void main(int argc, char* argv[])
{
//1、cin>>
//method one, 也就是最常用的方法 输入一个数字
:" << endl;
int a,b;
cout << "input two integer:" << endl;
cin >> a >> b;
cout << "SUM =" << a + b << "\n" << endl;
//method two,输入一个字符串,遇到“空格 回车 Tab”都结束
:" << endl;
char array[10];
cout << "input a char array:" << endl;
cin >> array;
cout << array << "\n" << endl;
//2、cin.get()
//one cin.get(字符变量名) 可以用来接收字符
cout << "Test cin.get(字符变量名):" << endl;
char ch;
char cch;
cout << "Input a char:" << endl;
ch = cin.get(); //把之前输入的回车符号滤去
cch = cin.get(); //or cin.get(ch);
cout << cch << "\n" << endl;
//two cin.get(字符数组,接收的字符数) 用来接收一行字符串可以接收空格
cout << "Test cin.get(字符数组,接收的字符数):" << endl;
char array1[20];
cout << "Input a char array:" << endl;
ch = cin.get(); //把之前输入的回车符号滤去
cin.get(array1,10);
cout << array1 << "\n" << endl;
//注:cin.get(无参数)主要用来舍弃输入流中不需要的字符 或者舍弃回车
//从而弥补了cin.get(字符数组,接收的字符数)的不足
//3、cin.getline(cin,str) 接收一个字符串 可以接收空格
cout << "Test cin.getline() 的用法:" << endl;
char array2[20];
cout << "Input a char array:" << endl;
ch = cin.get(); //把之前输入的回车符号滤去
cin.getline(array2,20);
cout << array2 << "\n" << endl;
//实际上cin.get(字符数组,接收的字符数) 和cin.getline(字符数组,接收的字符数)
//有三个参数cin.getline(字符数组,接收字符数,结束字符) 第三个参数默认是'\0'
//多维数组中也经常用到cin.getline(字符数组,接收的字符数)的用法
cout << "cin.get(字符数组,接收的字符数) is used in multidimensional array:" << endl;
char array3[3][10];
for (int i = 0;i < 3;i ++)
{
cout << "请输入第" << i+1 << "行的字符串:" << endl;
cin.getline(array3[i],10);
}
for (int j = 0;j < 3;j ++)
{
cout << "第" << j+1 << "行:" << array3[j] << endl;
}
//4、getline(cin,str)的用法 接收一个可以包含空格的字符串(这儿是string类型的) 需要包含头文件#include <string>
//getline(cin,str)是string流不是i/o流
cout << "Test getline(cin,str):" << endl;
string str;
cout << "Input a string:" << endl;
//ch = cin.get(); //把之前输入的回车符号滤去
getline(cin,str);
cout << str << "\n" << endl;
//5、gets(char *) 接收一个可以包含空格的字符串 需要包含头文件#include <string>
cout << "Test gets(char *)的用法" << endl;
char array4[20];
cout << "input a char array:" << endl;
ch = cin.get(); //把之前输入的回车符号滤去
gets(array4);
//The gets function reads a line from the standard input stream stdin and stores it in buffer.
//The line consists of all characters up to and including the first newline character ('\n').
//gets then replaces the newline character with a null character ('\0') before returning the line
cout << array4 << "\n" << endl;
//gets(char *)也可以用在多维数组里面 跟cin.getline()用法类似
//6、getchar(无参数) 接收一个字符 需要包含头文件#include <string>
cout << "Test getchar(无参数)的用法:" << endl;
char ch1;
cout << "input a char:" << endl;
ch1 = getchar(); // 不能写成getchar(ch1);
cout << ch1 << "\n" << endl;
//getchar()是C的函数 C++是兼容C 所以也可以使用 但尽量不用或少用
}
C++语言中cin cin.getline cin.get getline gets getchar 的用法实例的更多相关文章
- java语言中public、private、protected三个关键字的用法,重写和重载的区别。
java语言中public.private.protected三个关键字的用法,重写和重载的区别. 解答: 作用域 当前类 同包 子类 其它 public √ √ √ √ protected √ √ ...
- C语言中memset(void *s, char ch,unsigned n)用的用法
将指针s所指的内存空间中前n为重置为字符c 程序例: #include <string.h> #include <stdio.h> #include <memory.h& ...
- c++中 cin、cin.get()、cin.getline()、cin.getchar()的区别
①cin>>:无法接收空格.Tap键且以空格.Tap键.回车符为分隔符: ②cin.get( ):可以接收空格.Tap键且以回车符为结束符: 一:可输入单个字符 格式: char ch; ...
- C++中cin.get(),cin.getline(),cin>>,gets(),cin.clear()使用总结
1.cin.get() 实质:类istream所定义对象cin的重载成员函数 用于读取单字符 istream& get(char&) int get(void) 用于读取字符 ...
- cin详解(cin.get()、cin.getline()、cin.clear()、cin.sync())
在C中,输入输出用scanf和printf,在输入数据的同时还需说明数据的类型,如果输入数据较多,那就很麻烦,而C++中也有相似的东西cin和cout,它们来自C++的一个名叫" iostr ...
- [原创]cin、cin.get()、cin.getline()、getline()、gets()、getchar()的区别
这几个输入函数经常搞不清具体特点和用法,这里稍作总结 一.cin>> 1.最基本用法,输入一个变量值 2.输入字符串,遇“空格”.“TAB”.“回车”结束,比如输入“hello world ...
- C++中关于cin、cin.get()、cin.getline()、getline()、gets()等函数的用法
1.cin>> 用法1:最基本,也是最常用的用法,输入一个数字: 注意:>> 是会过滤掉不可见的字符(如 空格 回车,TAB 等) cin>>noskipws> ...
- C++中cin、cin.get()、cin.getline()、getline()、gets()等函数的用法----细节决定成败 (sort用法)
C++中cin.cin.get().cin.getline().getline().gets()等函数的用法 学C++的时候,这几个输入函数弄的有点迷糊:这里做个小结,为了自己复习,也希望对后来者能有 ...
- C++中cin、cin.get()、cin.getline()、getline()、gets()等函数的用法
学C++的时候,这几个输入函数弄的有点迷糊:这里做个小结,为了自己复习,也希望对后来者能有所帮助,如果有差错的地方还请各位多多指教(本文所有程序均通过VC 6.0运行) 1.cin 2.cin.get ...
随机推荐
- FZU 2168 防守阵地 I
Problem Description 部队中共有N个士兵,每个士兵有各自的能力指数Xi,在一次演练中,指挥部确定了M个需要防守的地点,按重要程度从低到高排序,依次以数字1到M标注每个地点的重要程度, ...
- Java IO流整理Rick
Java 流IO部分: Console 控制台信息读取// ----------- Console Begin // ------------ 部分代码 Console cons ; char[] ...
- C++实现有向权图的基本操作,界面友好,操作方便,运行流畅
Ⅰ.功能: .创建图 .展示全图 .添加顶点 .添加边 .删除顶点 .删除边 .查看指定边权值 .修改指定边权值 .输出两点间的所有简单路及路径对应权值 .销毁图 ps:关于9,如果不存在任何简单路, ...
- 多线程&NSObject&NSThread&NSOperation&GCD
1.NSThread 每个NSThread对象对应一个线程,量级较轻(真正的多线程) 以下两点是苹果专门开发的“并发”技术,使得程序员可以不再去关心线程的具体使用问题 2.NSOperation/NS ...
- node-webkit中使用sqlite3(MAC平台)
前言 最近使用node-webkit开发一款博客发布软件,来替换难用的Windows Live Writer(主要是对Markdown标签的支持很差劲).为了解决博文信息临时保存的问题,想到了使用sq ...
- jquery之insertBefore(),insertAfter(),prependTo(),appendTo()用法详解
导航: 1,insertBefore(),insertAfter(),prependTo(),appendTo()这四个函数用法几乎一样 2, 与之相对的有四个函数:Before(),After(), ...
- jquery之wrap(),wrap(),unwrap()方法详解
[注]wrap():为每个匹配元素外面添加指定的HTML结构, wrapAll(): 为所有匹配元素(作为一个整体)外面添加一个指定的HTML结构 原文地址:http://www.365mini.co ...
- php中一个"异类"语法: $a && $b = $c;
php中一个"异类"语法: $a && $b = $c; $a = 1;$b = 2;$c = 3;$a && $b = $c;echo & ...
- CentOS 7下编译FreeSWITCH 1.6
安装背景: 已经最小化安装CentOS 7. 准备工作: 挂载安装光盘,配置yum本地化安装,配置方法可以参考http://www.cnblogs.com/yoyotl/p/4877439.html. ...
- Linux链接库一(动态库,静态库,库放在什么路径下)
http://www.cppblog.com/wolf/articles/74928.html http://www.cppblog.com/wolf/articles/77828.html http ...