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 ...
随机推荐
- windows8运行php Composer出现SSL报错的问题
这是没有安装CA证书导致的!!! CA证书下载地址:http://curl.haxx.se/docs/caextract.html 然后修改php.ini文件 openssl.cafile= D:/w ...
- 在包a中编写一个类Father,具有属性:年龄(私有)、姓名(公有); 具有功能:工作(公有)、开车(公有)。 在包a中编写一个子类Son,具有属性:年龄(受保护的)、姓名; 具有功能:玩(私有)、学习(公有)。 最后在包b中编写主类Test,在主类的main方法中测试类Father与类Son。
package a; public class Father { public String name; private int age; public Father(String name) { t ...
- CANopen笔记1
CAN现场总线只定义了OSI网络模型的第一层(物理层) 和第二层(数据链路层) ,而这两层一般已被CAN硬件完全实现了.由于没有规定应用层,本身并不完整,需要一个高层协议来定义CAN报文中的11/29 ...
- Set Font Properties On Mouse Hover Of Push Button And Text Items At Run time In Oracle Forms
Change the font size and weight of text items and push buttons on mouse hover in Oracle Forms. An ...
- genome MuSic安装
系统:ubuntu 15.04全程在root权限下安装 首先安装软件samtools ,必须是samtools-0.1.19 版本tar jxf samtools-0.1.19.tar.bz2cd s ...
- zoj 2107&&hdu 1007最近点对问题
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1107 Quoit Design Time Limit: 5 Seconds ...
- HDU 5723 Abandoned country(落后渣国)
HDU 5723 Abandoned country(落后渣国) Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 65536/65536 ...
- Codeforces Round #158 (Div. 2) C. Balls and Boxes 模拟
C. Balls and Boxes time limit per test 1 second memory limit per test 256 megabytes input standard i ...
- Andoid java文件中的Log检查工具
AndroidLogChecker 由于发布软件版本的时候我们需要把Log注释掉,此工具可以检查java类中的Log所在行以及是否已经注释. Github: https://github.com/cu ...
- 个人博客作业WEEK 1
一.项目时间规划与实际用时 PSP2.1 Personal Software Process Stages 预计时间/h 实际时间/h Planning 计划 · Estimate · 估计这个任 ...