C++ 的字符输入
1. 使用cin输入,遇到空格后或者换行符结束一个字符数组的输入
#include<iostream>
using namespace std;int main(){int n = 10;char arr[n];cin>>arr;for(int i = 0; i < 10; i++){printf("%c",arr[i]);}cout<<endl;cout<<"cout输出:"<<arr<<endl;return 0;
}
效果:
由上面的结果可以看出,使用cin
输入字符数组以回车或空格为结束标记.遇到回车表示输入结束,退出输入
使用string字符串输入也是一样
2. 使用gets获取字符串可以获取空格以一个换行符结束数组的输入
#include<iostream>
#include<string>
using namespace std;
int main(){char a[100];gets(a); //输入:aaa sdfjkl sdjfkcout<<a<<endl;//输出:aaa sdfjkl sdjfk
}
效果:
注意点:gets()参数只能接收字符数组表示的字符串,不能接收string类的字符变量。
3. 使用Scanf()输入字符可以获取空格以及换行符,会将其当做一个字符并不会停止
#include<iostream>
using namespace std;int main(){int n = 10;char arr[n];for(int i = 0; i < 10; i++)scanf("%c",&arr[i]);
// cin>>arr;for(int i = 0; i < 10; i++){printf("%c",arr[i]);}cout<<endl;cout<<"cout输出:"<<arr<<endl;return 0;
}
效果:
总结:
所以之后在做题的时候要注意是以什么为结尾的,要不要换行符,空格之类的选用对应的字符输入方式!
字符数组的特性字符串类同样适用!