네임스페이스(namespace)
네임스페이스(namespace)는 C++에서 변수나 함수 이름이 충돌하는 것을 방지하기 위해 사용됩니다. 대규모 프로그램을 개발할 때, 여러 라이브러리에서 같은 이름의 함수나 변수가 존재할 수 있는데, 네임스페이스를 사용하면 이를 구분할 수 있습니다.
네임스페이스의 기본 문법
#include <iostream>
namespace MyNamespace {
int value = 42;
void show() {
std::cout << "MyNamespace의 값: " << value << std::endl;
}
}
int main() {
MyNamespace::show(); // 네임스페이스를 사용하여 접근
return 0;
}
위 코드에서 MyNamespace 안에 value 변수와 show 함수가 정의되어 있으며, MyNamespace::show();와 같이 사용해야 해당 네임스페이스의 요소에 접근할 수 있습니다.
using 키워드 활용
매번 std::cout처럼 std::를 붙이는 것이 불편할 수 있습니다. 이를 해결하기 위해 using 키워드를 사용할 수 있습니다.
#include <iostream>
using namespace std;
int main() {
cout << "Hello, world!" << endl;
return 0;
}
하지만 using namespace std;를 전체 코드에서 사용하는 것은 충돌 가능성을 높일 수 있으므로, 특정 요소만 가져오는 것이 좋습니다.
#include <iostream>
using std::cout;
using std::endl;
int main() {
cout << "Hello, world!" << endl;
return 0;
}
cin (표준 입력)
cin은 C++에서 표준 입력을 처리하는 객체로, 키보드로부터 입력을 받을 때 사용됩니다.
cin 기본 사용법
#include <iostream>
using namespace std;
int main() {
int age;
cout << "나이를 입력하세요: ";
cin >> age;
cout << "입력한 나이: " << age << endl;
return 0;
}
cin은 입력을 받을 때 공백(스페이스, 탭, 개행 문자)으로 구분된 데이터를 읽어옵니다.
여러 개의 값 입력
cin을 사용하여 여러 개의 값을 한 번에 입력받을 수도 있습니다.
#include <iostream>
using namespace std;
int main() {
int a, b;
cout << "두 개의 정수를 입력하세요: ";
cin >> a >> b;
cout << "입력한 값: " << a << "과 " << b << endl;
return 0;
}
문자열 입력 (cin과 getline의 차이)
cin을 사용하여 문자열을 입력받을 때, 공백이 포함된 문자열을 입력받으려면 getline을 사용해야 합니다.
#include <iostream>
#include <string>
using namespace std;
int main() {
string name;
cout << "이름을 입력하세요: ";
getline(cin, name); // 한 줄 전체 입력 받기
cout << "입력한 이름: " << name << endl;
return 0;
}
cin은 공백 이전까지만 읽기 때문에, getline을 활용하면 공백이 포함된 문장도 정상적으로 입력받을 수 있습니다.
[C++] 1. iostream & cout
C++ 프로그래밍에서 입출력은 중요한 요소 중 하나입니다. C++에서는 표준 입출력을 제공하기 위해 헤더를 사용하며, cout 객체를 활용하여 데이터를 출력할 수 있습니다.iostream 헤더은 C++ 표준 라
clarelee.tistory.com
'Jaden's spectrum > 📂 Programming Languages' 카테고리의 다른 글
[C++] 6. 배열 (+다중 배열) (0) | 2025.03.17 |
---|---|
[C++] 5. 반복문 (for & while) (0) | 2025.03.16 |
[C++] 4. 조건문 (if & switch) (0) | 2025.03.16 |
[C++] 3. 변수 (0) | 2025.03.16 |
[C++] 1. iostream & cout (0) | 2025.03.16 |