注意: 下面的各种方式都可接收开头为空格的字符或字符串。即空格在开头的话,“没有什么影响”。嗯,描述不太恰当。自行领会。
1. cin 的用法及特点: 假设 a为数组,size为数组大小。
特点:当输入的字符串中或结尾含有空格(注意:并非开头的空格。),则表示输入结束,停止读取字符串。但是空格及其空格后面的字符串也会进入到缓冲流中,当执行下一输入语句时,就会捕获到该字符串,这样就不需要再次输入,而是直接输出。
cin>>a;
cin.get(a,size);
cin.getline(a,size);
运行结果如下:
2. cin.get(): 该语句的作用是获取一个字符(空格也是字符)
cin.get(a,size): 该语句的作用是读取一行字符串(包括空格)
cin>>a;
cin.get();
char c=cin.get(); //获取单个字符
cin.get(a,size).get(); //可直接接get(),
cin.getline();
运行结果如下:
3. cin.getline(a,size): 读取字符串可读取空格并输出,图如上。
cin.getline(a,size,‘c’): 其中c为结束字符,遇到即止。
4. getline(cin,str): 读取字符串,可读取空格并输出,
需包含头文件 #include<string>
string str;
getline(cin,str);
5. gets(): 读取一个字符串,可读取空格并输出,需包含头文件 #include"string"
_注意:_在VS中需要添加后缀,即:gets_s().。。这是微软发明的安全函数,仅适用于VS。
需包含头文件 #include<string>
gets_s(a);
6. getchar():
读取一个字符,需包含头文件 #include <string>
char ch;
ch=getchar();