C++
정렬 : Ctrl K + Ctrl F
주석 : Ctrl K + Ctrl C 해제 Ctrl K + Ctrl U
- new 연산자 : 포인터 = new 타입[(초깃값)];
6. IO 스트림 cin과 cout를 사용하여 정수값 두개를 입력받아 그 합을 출력하기
- std랑 return 은 생략가능
▼ endl 빼도 실행이 됨. ( endl은 라인이 큐에 삭 들어가서 출력하고 비우고 출력하고 비우고 출력하고 반복 > 오래걸림)
\n은 끝까지 다 들어간 후에 한번에 출력됨.
- 트리만들기 별찍기
for (초기값; 비교값; 증감값) { //for 문 뒤에 초기화 하는 거 잊지말기
조건 1;
조건 2 ;
출력 ;
}
이런식으로 해야함
cout << 는 복합적으로 출력할 수 있다. ex. 변수 + 숫자 + bool + float 등등 다 합쳐서 한줄로도 ㄱㄴ
연산식뿐만 아니라 함수 호출도 가능.
-- cout와 <<를 이용한 화면 출력 : 61 행에서
int size = w*h ;
return size ;
해도됨.
- namespace : 이름 충돌안하게 1동::마이클 , 2동::마이클 이렇게 부르는거
cout >> A::tot / cout >> B::tot 이렇게 부르는거. ▶ 이름 공간 :: 이름 이렇게 부르기.
- std : 이름공간 중 하나.
- iostream 헤더 파일에 선언된 모든 이름 : std 이름 공간 안에 있음.
- std 이름공간에 선언된 이름을 접근하기 위해 std:: 접두어 사용해야함 .ex) std::cout, std:endl
- 위에 using std::(이름) 이렇게 사용하면 std:: 생략 가능함.
- using namespace std; >> 밑에꺼 다 생략 ㄱㄴ (통째로 이름 공간 내에 선언한거임. iostream 헤더 파일을 사용하기위해)
- cin : 입력 다 끝나고 enter 키를 켜야지 입력 버퍼에 저장(메모리에 저장) 잘못치면 backspace 눌러서 지울 수 있음.(엔터 치기 전에) / >>> 입력 스트림 cin ▶ 스트림 버퍼에서 프로그램으로 키 전달함.
- C 스트링방식 : \0로끝나는 문자배열 , 맨끝에 \0 이라고 문자가 하나 더 붙어서 저장된다.
없으면 단순 문자 배열. ex) Grace > G[0] / r[1] /a [2] / c[3] / e[4] / \0 [5]
- string 클래스 이용 : <string> 헤더 파일에 선언됨. 다양한 멤버 함수 제공, 문자열 비교, 복수, 수정 등
---- 키보드에서 문자열 입력 받고 출력
--- C-스트링을 이용하여 true가 되면 프로그램을 종료하는 예
▲ 요거는 공백없이 했는데 공백이 낀 문자열을 받으려면
cin.getline(char buf[], int size, char delimitChar)
buf에 최대 size-1개의 문자 입력 (끝에 \0 포함) ex. cin.getline(address, 100, '\n');
--------공백이 낀 문자열 받아서 하는거 cin.getline() 예시
- string 클래스 : 문자열 크기에 대한 제약이 읍어 (c- 스트링 보다 더 쓰기 쉬움) / 공백이런거 신경안써도됨.
include <string> 헤더 쓰고 해야한다
int main() {
char c[100];
int count = 0;
cout << "문자열 이볅해라" << endl;
cin.getline(c, 100, '\n');
int i = 0;
while (true) {
if (c[i]) == '\0')
break;
if (c[i] == 'A')
conut++;
i++;
}
}
int main() {
string word;
cout << "A가 몇 개있는지 궁금한 단어를 작성하세요.(대문자로): ";
getline(cin, word);
int a = 0;
int n = 0; //숫자세기
for (int i = 0; i<=20; i++) {
if (word[a] == 'A') {
cout << word[a];
a += 1;
n += 1;
cout << "맞음" << n;
return i;
}
else {
cout<< "틀림"<< n;
return i;
}
cout << n;
}
}
int main() {
string word[100];
cout << "A가 몇 개있는지 궁금한 단어를 작성하세요.(대문자로): ";
cin.getline(cin, 100, '\n');
int a = 1;
for (int n = 0; n < 10; n++) {
if (word[n] == 'A') {
a += 1;
}
else {
cout << " ";
}
cout << a;
}
}