http://yantingting1219.blog.sohu.com/71850367.html

cin

读取并忽略 非空白字符 之前所有的空白字符,然后读取字符直至再次遇到空白字符,读取终止。

 
/*sting对象接收流中字符*/

#include <iostream>
#include <string>

using namespace std;

int main()
{
	string str;

	cin >> str;
	cout << str;

	return 0;
}


 
输入:

  hello world

输出:

hello

 

 

 

 

/*字符数组接收流中字符*/

#include <iostream>
#include <string>

using namespace std;

int main()
{
	char str_array[20];
	cin >> str_array;
	cout << str_array;

	return 0;
}

输入输出同上。

 

 

cin.getline()

 

/*sting对象接收流中字符,出错!!不是同一流!*/

#include <iostream>
#include <string>

using namespace std;

int main()
{
	string str;

	cin.getline(str, 5);
	cout << str;

	return 0;
}

出错!!

 

 

 

/*
字符数组接收流中字符,cin.getline(str_array, n);
实际最多可接收n-1个字符,第n个字符置'\0'
*/

#include <iostream>
#include <string>

using namespace std;

int main()
{
	char str_array[10];
	cin.getline(str_array, 10);
	cout << str_array;

	return 0;
}



输入:

1234567890
输出:

123456789

 

 

/*
字符数组接收流中字符,cin.getline(str_array, 10);
实际最多可接收9个字符,第10个字符置'\0'
*/

#include <iostream>
#include <string>

using namespace std;

int main()
{
	char str_array[10];
	cin.getline(str_array, 5);
	cout << str_array;

	return 0;
}

输入:

123456

输出:
1234

 

getline()不忽略空格,默认换行作为结束

/*字符数组接收流中字符,出错!!流不同!*/

#include <iostream>
#include <string>

using namespace std;

int main()
{
	char str_array[10];
	getline(cin, str_array);
	cout << str_array;

	return 0;
}

 

 

 

/*string对象接收流中字符*/

#include <iostream>
#include <string>

using namespace std;

int main()
{
	string str;
	getline(cin, str);
	cout << str;

	return 0;
}

输入:

  123456

输出:
  123456


 

相关文章:

  • 2021-12-16
  • 2021-09-16
  • 2022-12-23
  • 2021-12-18
  • 2022-02-24
  • 2021-09-05
猜你喜欢
  • 2022-12-23
  • 2021-12-07
  • 2021-06-21
  • 2021-07-30
  • 2021-12-18
  • 2022-01-02
相关资源
相似解决方案