1 분 소요


getline, cin


#include <iostream>
std::cin

iostream에 정의된 입력스트림 객체.
화이트스페이스, 개행 까지만 입력을 받음.
나머지 무시된 문자들은 버퍼에 남는다.

#include <iostream>
cin.ignore()

버퍼에 남은 개행을 지워줌.
cin 사용시 다음입력때 개행이 들어가게됨.

#include <istream>
cin.getline(char str, streamsize n);
cin.getline(char str, streamsize n, char dlim);

입력받은 문자열을 str에 저장.
옵션 : n; n만큼의 문자열 저장 / dlim; 딜리미터설정. default = ‘\n’

#include <string>
getline(istream& is, string str);
getline(istream& is, string str, char dlim);

문자수를 지정하지 않아도된다.
옵션 : dlim; 딜리미터설정.

#include <iostream>
cin.get();

버퍼에서 1글자만 입력받음.
남겨진 문자열은 버퍼에 그대로 남는다.

문자열 비교

strcmp

#include <string.h>
int strcmp ( const char * str1, const char * str2 );

« input »

using namespace std;
#include<iostream>
#include<string.h>

int main() {
	const char *arr_1 = "asdf";
	const char *arr_2 = "qwer";
	const char *arr_3 = "asdf";

	if (strcmp(arr_1, arr_2))
		cout << arr_1 << " and " << arr_2 << " are different" << endl;
	else
		cout << arr_1 << " and " << arr_2 << " are same" << endl;

	if (strcmp(arr_1, arr_3))
		cout << arr_1 << " and " << arr_3 << " are different" << endl;
	else
		cout << arr_1 << " and " << arr_3 << " are same" << endl;
}

« output »

asdf and qwer are different
asdf and asdf are same


compare

#include <iostream>
int compare (const string& string-name) const;
#include<iostream>
using namespace std;

int main()
{
	string str1 = "asdf";
	string str2 = "qwer";
	string str3 = "asdf";

	cout << str1.compare(str2) << endl;
	cout << str1.compare(str3) << endl;
}

« output »

-16
0

!=, ==

« input »

#include<iostream>
using namespace std;

int main()
{
	string str1 = "asdf";
	string str2 = "qwer";
	string str3 = "asdf";

	if (str1 == str2)
		cout << "str1 == str2" << endl;
	else
		cout << "str1 != str2" << endl;
	if (str1 == str3)
		cout << "str1 == str3" << endl;
	else
		cout << "str1 != str3" << endl;
}

« output »

str1 != str2
str1 == str3

iomanip

문자열 출력, 입력시 사용되는 형식지정기능을 제공한다.


substr

#include <string>
basic_string substr(size_type pos = 0, size_type count = npos) const;

해당 문자열의 pos부터 npos만큼의 부분 문자열을 리턴한다.

댓글남기기