ostream& write(const char* str, int count) 문자열을 count 만큼 출력한다.
#include<iostream>usingnamespace std;intmain() { // put(char) 하나의 문자를 출력한다.cout.put('H').put('e').put('l').put(108).put('o').put('\n'); // write(const char* str, int count) 문자열을 count 만큼 출력한다.charname[20] ="ezcode";for (int i =1; i <10; i++) {cout.put('|').write(name, i).put('|').put('\n'); }return0;}
출력 버퍼 비우기
cout <<"출력 문자열"<< flush; // 강제로 버퍼를 비운다.cout <<"출력 문자열"<< endl; // 개행을 한 후 강제로 버퍼를 비운다.
문자폭 변경
int width() 설정된 출력 문자폭을 반환
int width(int) 출력 문자폭을 설정, 하나의 출력에만 영향을 준다.
#include<iostream>usingnamespace std;intmain() { cout <<"01234567890123456789"<< endl;cout.width(10); cout <<123<< endl; // 하나의 출력만 영향이 있다 cout <<123<< endl; cout.width(10); cout <<123<< endl;return0;}
#include<iostream>usingnamespace std;intmain() {double num =123.12345678901234; cout <<"12345678901234567890"<< endl;int p =cout.precision(15); // 표시 문자수 설정 cout << num << endl;cout.precision(p); // 원래 표시 문자수로 설정 cout << num << endl;return0;}
진법 표시 전환
dec(cout) 기본값, 10진수로 표시 cout << dec과 동일
hex(cout) 16진수로 표시 cout << hex과 동일
oct(cout) 8진수로 표시 cout << oct과 동일
#include<iostream>usingnamespace std;intmain() {int num =12345; cout <<"기본값 : "<< num << endl;hex(cout); cout <<"16진수 : "<< num << endl; cout << oct; cout <<"8진수 : "<< num << endl; cout <<"10진수 : "<< dec << num << endl;return0;}
입력 스트림 함수
문자 1개 입력
int get() 공백을 건너뛰지 않고 문자 하나를 입력 하여 반환
istream& get(char&) 공백을 건너뛰지 않고 문자 하나를 입력
#include<iostream>usingnamespace std;intmain() {char a, b, c; cout <<"문자 3개 입력"<< endl; a =cin.get();cin.get(b).get(c); cout << endl <<"입력받은 문자열"<< endl; cout << a << endl; cout << b << endl; cout << c << endl;return0;}
입력 스트림 비우기
istream& ignore(int=1, int=EOF)
첫번째 매개변수는 제거할 문자의 최대 개수
두번째 매개변수는 종료문자
공백을 포함한 문자열 입력
공백을 포함하는 문자열을 입력받을 때 사용
istream& get(char* int, char='\n')
istream& getline(char* int, char='\n')
첫번째 매개변수는 저장될 문자열의 포인터
두번째 매개변수는 문자열의 크기
세번째 매개변수는 라인을 구분하는 구분자로 기본값,'\n'