字符串在C++中是特殊的存在(很多字符串函数,用字符串比用字符数组更方便,但是也导致字符串的使用方法和其他数组不同),因此在讨论数组问题是,都会把字符串单独拉出来说。
一、非字符串的输入方法
cin>>a[i];
本语句用于将键盘输入的信息储存在a[i]中。
使用cin不需要向C语言一样需要指出数据的类型,cin会直接按照之前对数组的类型声明,将输入的数据按照声明的类型储存在数组中。
使用cin输入数字的时候,会把回车留在缓冲区,如果后面还有别的输入,留在缓冲区的回车可能会导致意外结果。
为了防止出现这种情况,cin后面跟一个接收回车字符的函数吧。具体方法看下面。
二、字符串的输入方法
1、cin.getline(储存数组名,字符个数);
运行过程:本函数可以读入一行字符(回车为函数识别结束的位置)。如果读到回车,会把回车换成'\0'储存在字符串的最后;如果读到字符个数减一还没有遇到回车符,就会在最后一个位置上存入'\0'。
举例:cin.getline(name,20);
如果已经读了19个字符还没有遇到回车,数组的最后一个元素会存入'\0',即name[19] = '\0'.
2、cin.get(数组名,字符个数);
本函数和cin.getline()非常类似,只有一个区别:cin.getline()会接受回车并把回车换成'\0'&