도서 : 초보자를 위한 C++ 프로그래밍(성안당)
지음 : 강성수 지음
- write()를 사용하여 문자열 출력
- 문자열을 cout 객체를 이용하여 출력할 때 write() 멤버 함수를 사용한다.
- 형식 - cout.write("문자열", 출력할 글자수);
- write() 함수는 문자열 끝인 널문자를 만나더라도 문자들의 출력을 자동으로 맞추지 않고 출력할 문자들의 수가 문자열의 길이를 초과하여도 무조건 그 개수만큼 출력함에 주의하라.
- write() 함수는 수치 데이터도 출력할 수 있다. 이 경우에는 수치를 그 값에 해당하는 ASCII문자로 변환하지 않고 메모리에 저장된 비트 표현을 그대로 전달하여 출력한다.
- 예제 - write를 사용하여 문자열 출력하기
1
2
3
4
5
6
7
8
9 |
#include <iostream>
using namespace std;
int main() {
char str[] = "I can do it!!!";
cout.write(str, 5);
return 0;
} |
cs |
- 결과
- flush() 멤버 함수를 사용하면 강제로 출력 버퍼를 비운다. - cout << flush; // 출력 버퍼 지우기
- 문자열 함수 처리 내용
-
C 스타일로 문자열을 처리하는 함수는 <csting> 헤더 파일에 함수 원형이 선언되어 있다.
- size_t 형은 unsigned int 또는 unsigned long과 같이 부호 없는 정수형으로 정의되어 있다.
- C스타일(char str[] = " ";)과 C++ 스타일(string str = " ";)의 문자열 혼합은 불가하다. -> cpp라는 C++스타일의 문자를 dest라는 포인터를 사용하여 저장하려고 한다면 strcpy(dest, cpp);만으로는 오류가 난다. 이럴 때는 strcpy(dest, cpp.c_str()); 같이 써야한다.
- 데이터 변환 함수
- <cstdlib> 헤더 파일에는 정수 산술 함수, 정렬 함수(qsort() 등)와 ASCII 텍스트를 int, long, float 등으로 변환하는 함수를 제공한다.
'C++ 개념' 카테고리의 다른 글
포인터와 다차원 배열, 함수 (0) | 2019.02.28 |
---|---|
void * 형 포인터는 캐스트 변환 (타입 *)으로 (0) | 2019.02.28 |
continue문 - 흐름 이동 (0) | 2019.02.27 |
수학 함수 (0) | 2019.02.27 |
단항 스코프 식별 연산자(::) (0) | 2019.02.27 |