cin>>
用法1:输入一个数字或字符
用法2:接收一个字符串,遇“空格”、“TAB”、“回车”就结束
cin.getline()
cin.getline(str,length+1)
接收一个字符串,可以接收空格并输出,超过length的不计入
#include <iostream>
using namespace std;
main ()
{
char m[20];
cin.getline(m,5);
cout<<m<<endl;
}
输入:aaaaa
输出:aaaa
接收5个字符到m中,其中最后一个为’\0’,所以只看到4个字符输出;
如果把5改成20:
输入:aaaaaaaa
输出:aaaaaaaa
输入:aaaa aaaa aaaa aaaa
输出:aaaa aaaa aaaa aaaa
延伸:
1、cin.getline()实际上有三个参数,cin.getline(接收字符串的变量,接收字符个数,结束字符)
2、当第三个参数省略时,系统默认为’\0’
3、如果将例子中cin.getline()改为cin.getline(m,5,‘a’);当输入aaaaa时输出aaaa.
getline()
getline(cin,str)
读入整行字符串放入str中,需要使用头文件#include<string>
#include<iostream>
#include<string>
using namespace std;
int main ()
{
string str;
getline(cin,str);
cout<<str<<endl;
}
输入:jkljkljkl
输出:jkljkljkl
输入:jkl jfksldfj jklsjfl
输出:jkl jfksldfj jklsjfl
printf与scanf函数:
scanf(“%s”,&数组变量名)
-
对string类对象无法使用,只能由此输入字符数组
-
空格,tab,回车被视为输入项间隔,遇到这三个就结束
-
需要加头文件#include<cstdio>
printf(“%0.1f\n”,re);
- 浮点数保留一位小数
注意
-
当同时使用cin>>,ci