c++

· C++
c_str() 함수는 string class의 멤버 함수이다. c언어에는 string을 '문자의 배열' 인 문자열로만 표현 가능하다. c++에만 존재하는 string 자료형을 c_str() 을 통해 c style의 문자열로 변환하는 함수가 c_str()이다. string CPP = "hello"; char C[6] = "hello"; 두 문자열 모두 cout에서 정상적으로 출력되어 hellohello 가 출력된다. cout
· PS
1053. [풀이] c++에는 참 거짓을 나타낼 수 있는 자료형 bool 이 있다. 다른 자료형의 값을 bool()을 통해 ture or false 로 나타낼 수 있다. #include using namespace std; int main(void) { bool a; cin >> a; cout > a; cout > a >> b; int result = a & b; cout > a >> b; a > b ? cout > b; max(a,b); } 1064. [풀이] 세 가지 정수를 비교하는 삼항연산자는 더 복잡해 보이지만 원리는 같다. #include using namespace std; int main(){ int a, b, c; cin >> a >> b >> c; (a < b && a < c) ? cout
· PS
1031. [풀이] #include using namespace std; int main(){ int a; cin >> a; printf("%o", a); } 1032. [풀이] #include using namespace std; int main(){ int a; cin >> a; printf("%x", a); } 1034. [풀이] #include using namespace std; int main(){ int a; scanf("%o", &a); cout > a; cout > a; cout
· PS
1022. [풀이] 공백 포함하여 string 으로 읽어 싶다면 getline(cin, string name) 을 사용하면 된다. #include using namespace std; int main(void) { string str; getline(cin, str); cout a; int k = 10000; for (int i = 0; i > y >> dash >> m >> dash >> d; cout.width(2);co..
· PS
1012. [풀이] 소수점 7자리에서 반올림 해 6자리까지 나타내는 방법은 아래 두 가지 방법이 있다. #include using namespace std; int main() { float n; cin >> n; cout c >> b; cout m >> dot >> d; cout.width(4); cout.fill('0'); cout > rear; cout.width(6); cout.fill('0'); cout
· PS
코드업 c언어 100제에서 c++을 이용해 문제를 풀 것이다. 문제는 하루 푸는 양만큼 글로 나눠 포스팅할 예정이고 복습하려고 다시 봤을 때 도움이 될만한 문제만 풀려고 한다. 1003. [풀이] endl 보다는 '\n' 을 쓰는 것이 실행 속도 측면에서 더 좋다. 두 가지 개행문자의 차이는 C++ 카테고리에서 자세히 작성하려고 한다. endl 보다는 '\n' 을 사용하는 습관을 들이자. 코딩테스트는 실행시간 싸움이다. #include using namespace std; int main(void) { cout
· C++
C++ 표준 라이브러리는 비트 플래그 조작을 돕는 std::bitset을 제공한다. std::bitset을 사용하려면 필요한 비트 수를 나타내는 std::bitset 변수를 정의해야 한다. #include std::bitsetbits(0x3); std::bitset 변수 bits는 0000 0011 이 된다. std::bitset은 4가지 주요 함수를 제공하는데 1. test() : 비트 상태를 알려준다. 2. set() : 비트를 켠다. 3. reset() : 비트를 끈다. 4. flip() : 비트를 뒤집는다. 위 함수들을 활용한 코드가 다음과 같다. #include #include using namespace std; int main(){ bitsetbits(0x03)// 0000 0011 bits..
· C++
매직 넘버를 사용하는 것은 좋지 못한 습관이다. 매직 넘버란 아래 코드와 같이 한 반의 최대학생 수를 30으로 나타내는 것이다. int maxStudents = numClassrooms * 30; 매직넘버 대신 심볼릭 상수를 정의하는 것이 바람직한데 심볼릭 상수는 상수 리터럴 값이 지정된 이름이다. 그 방법은 두 가지 있다. 1. 매크로를 사용한다. (bad) #define MAX 30 매크로를 사용하면 전처리기가 MAX를 발견하면 30으로 대체한다. 여기에는 두 가지 문제가 있다. 첫 번째로, 매크로를 사용한 심볼릭 상수는 디버거에 표시되지 않는다. 두 번째로, #define 된 값은 항상 파일 스코프(범위)에 있으므로 나중에 #define된 값과 충돌할 수 있다. 2. const 변수를 사용한다. (..
· C++
이스케이프 시퀀스는 \ (back slash)로 시작한 다음 문자 또는 숫자가 나온다. 대표적으로 사용하는 \n 또한 이스케이프 시퀀스다. 다양한 이스케이프 시퀀스들이 존재하는데 다음과 같다.
· C++
bool 변수에 true 혹은 false 값을 저장해도 cout 으로 출력할 때는 1 혹은 0 으로 출력한다. 따라서 아래 코드와 같이 boolalpha를 사용해 bool 값을 true/false 로 출력할 수 있다. noboolalpha를 사용해 다시 1/0으로 출력할 수도 있다. #include "iostream" #include using namespace std; int main(void) { bool b = true; cout
20240619
'c++' 태그의 글 목록 (3 Page)