一、getline()
#include<iostream>
getline(cin,temp,delim);
- cin是标准输入流函数
- temp是用来存储字符的变量名
- delim是结束标志
例子
输入:10.70.44.68 , 分割数字
string ip;
cin>>ip;
istringstream iss(ip);
string seg;
vector<int> v;
while(getline(iss,seg,'.')) v.push_back(stoi(seg));
string seg;
vector<int> v;
while(getline(cin,seg,'.')) v.push_back(stoi(seg));
二、cin.getline()
#include<iostream>
getline(char * s,n);
getline(char * s,n,delim);
- s是一个字符数组,例如char name[100]
- n是要读取的字符个数
- delim是结束标志,默认为换行符
例子
#include <iostream>
using namespace std;
int main () {
char name[256]
cout << "Please, enter your name: ";
cin.getline (name,256);
cout << name << endl;
return 0;
}
三、区别
- getline()是string流的函数,只能用于string类型的输入操作。当你定义了一个string类型变量,只能用getline()来输入。
- cin.getline是std流的函数,用于char类型的输入操作。当你定义了一个char类型变量,只能用cin/cin.getline()输入。