C++字符串输入

1.使用cin输入

	char a[20];
    cin>>a;

遇到空字符就停止输入,即只能输入单个单词。
2.使用getline输入

    char a[20];
    cin.getline(a,20);

该函数有两个参数,第一个是数组的名称,第二个是要读取的字符数。遇到换行符或者读取完指定数目的字符停止读取。在存储字符串时,用空字符来代替换行符。
3.使用get输入
(1)与getline用法相似,接受的参数相同,解释参数的方式也相同,都读到行尾,但不读取并丢弃换行符,而是将其留在输入队列,如果连续调用两次get

    char a[20],b[20];
    cin.get(a,20);
    cin.get(b,20);

假设输入“asasd sadas”,输出仍然是“asasd sadas”,因为第一次调用后,换行符留在了输入队列,第二次调用时,看到的第一个字符就是换行符,此时,get认为已经到达了行尾,没有读取任何东西。
解决方法就是使用get拼接

	char a[20],b[20];
    cin.get(a,20).get();//第二个get()处理了换行符
    cin.get(b,20);
posted @ 2019-02-27 10:54  Cherish486  阅读(94)  评论(0编辑  收藏  举报