코드
#include <stdio.h> int main(void){ printf("\\ /\\\n"); printf(" ) ( ')\n"); printf("( / )\n"); printf(" \\(__)|"); return 0; }
출력 보고 '아 뭐야 완전 쉽네' 했다가 큰코 다쳤네요.
역슬래쉬 출력하는 걸 배운 적이 없어서...
1학년 2학기 때 문해프 시험에서 비슷한 거 나왔던 거 같은데
시험 때 출력이 안 돼서 애먹다가 결국 틀렸던 걸로 기억한다
이번에 확실히 알아가는 걸로,,
역슬래쉬(), 작은 따옴표('), 큰 따옴표("), 퍼센트(%) 기호를 출력하려면
\를 한 번 더 붙여주어야 합니다.
\ 입력 -> \ 출력
\' 입력 -> ' 출력
\" 입력 -> " 출력
\? 입력 -> ? 출력
이런 식으로 해줘야!
다만 C++에서 cout을 쓸 때 % 출력하려면 그냥 % 써주면 되는데
C언어에서 %를 출력하려면 %%를 입력해야 합니다.
이번 문제는 한 번에(?) 맞히긴 했지만 인터넷 뒤져서 성공한 거라 아쉽네요.
그래도 새로운 거 배워가는 거에 의의를 두는 걸로
글구 오늘 고양이 문제 풀며 하나 더 눈에 띈 건
C++문법이 C언어랑 좀 다르다는 거..!
근데 C++에 C언어 문법 그대로 써서 출력해도 결과는 제대로 출력되더라구요. 그치만 미래를 위해 정리해두자면...
C언어에서 배운 기본 포맷은
#include <stdio.h>
int main(void) {
return 0;
}
와 같았다면 C++의 기본 포맷은 아래와 같습니다.
#include <iostream>
using namespace std;
int main() {
return 0;
}
'포함하다'라는 의미를 가진 include는 필요한 라이브러리, 헤더 파일 등을 포함하도록 합니다.
C에서 stdio.h라는 헤더파일을 사용하는 것과 달리
C++에서는 < iostream >을 사용합니다.
입출력 관련 헤더 파일이 C에서는 stdio.h인 반면
C++에서는 < iostream >이 입출력 관련 헤더파일이기 때문입니다.
(즉 < iostream >은 iostream.h 파일을 의미)
이 파일 안에 입력과 출력에 관한 객체와 함수들이 들어있습니다.
여기서 stream은 무얼 의미하나 하면 데이터의 흐름을 의미합니다.
<는 왼쪽으로의 데이터 흐름, >는 오른쪽으로의 데이터 흐름을 의미합니다.
namespace는 입력하는 문자열을 대신합니다.
즉 std를 namespace로 처리하면
std 클래스명을 사용하지 않고 함수를 호출할 수 있습니다.
std는 standard library(표준 라이브러리)를 의미합니다.
출력은 원래 std, cout을 사용해야 하지만 이렇게 함으로써
cout만 사용해도 같은 기능을 하게 되어 편리해집니다.