数据的读入
可采用 cin.getline()一行一行读入数据;也可以采用cin.get()一个一个读入字符,但需要注意的是,cin.get()不会忽略任何字符,对于回车符需要单独处理。
如果 char a[50]; 则 cin.getline(a,50);
如果 string a; 则 getline(cin,a);
//cin 会忽略回车、空格、Tab 跳格
//采用 cin.get()一个一个读,就不会忽略任何字符
//也可以采用 cin.getline()一行一行读入
C语言中
从终端读入字符串。功能为
1、 gets功能为读入一行,并将换行符转换为字符串结束符。
2、 scanf("%s",s);读入时,遇到空白字符,包括空格,制表符,换行符时均会停止输入。
从功能上可以看出不同之处:
1 终止条件不同。gets只有遇到\n时才会结束输入,而scanf遇到空格或制表符时,也会结束输入。
比如输入"test string\n"。
用gets得到的字符串为"test string", 二用scanf得到的是"test"。
万能头文件
#include <bits/stdc++.h>