Day 1

C와의 차이점

  • #include <stdio.h> -> #include <iostream>
    • 형식지정자 필요없어짐
  • .h 사라짐
    • 호환은 가능
  • class의 개념
    • object
  • bool의 개념
    • C
      • 참 : 0 이외의 값
    • C++
      • true : 1
      • false : 0
  • string의 개념

Practice

practice.cpp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using namespace std;

int main(){
int a = 5;
int b = 10;
cout << "1. a + b / 3 * 3 = " << a + b / 3 * 3 << endl;
cout << "2. b << 2 = " << (b << 2) << endl;
cout << "3. a != b = " << (a != b) << endl;
cout << "4. b % a = " << (b % a) << endl;
cout << "5. (a > b) ? a : b = " << ((a > b) ? a : b) << endl;
cout << "6. sizeof(a) = " << sizeof(a) << endl;
int c;
c = a++;
cout << "7. C = a++ 이후 c의 값 : " << c << endl;
a += b;
cout << "8. a += b 이후 a의 값 : " << a << endl;
cout << "9. a & b = " << (a & b) << endl;
c = (a + b, a - b);
cout << "10. c = (a + b, a - b) 이후 c의 값 : " << c << endl;
return 0;
}

Output

1
2
3
4
5
6
7
8
9
10
11
12
1. a + b / 3 * 3 = 14
2. b << 2 = 40
3. a != b = 1
4. b % a = 0
5. (a > b) ? a : b = 10
6. sizeof(a) = 4
7. C = a++ 이후 c의 값 : 5
8. a += b 이후 a의 값 : 16
9. a & b = 0
10. c = (a + b, a - b) 이후 c의 값 : 6

Process finished with exit code 0
Read more »

제어문

  • 제어문(Control statement)을 사용하여 조건에 의해 문장들의 실행 순서 변경
    • 조건문 : 조건에 따라서 여러 개의 실행 경로 가운데 하나를 선택
      • if-else 문장
      • switch 문장
    • 반복문 : 조건이 유지되는 한, 혹은 정해진 횟수만큼 처리를 되풀이하는 문장
      • for 문장
      • while 문장
Read more »

변수와 상수

  • 변수(Variable) : 프로그램이 실행되는 동안 저장된 값이 변경될 수 있는 공간
  • 상수(Constant) : 프로그램이 실행되는 동안 값이 변경되지 않는 공간

자료형

데이터의 종류를 자료형(Data type) 또는 데이터 타입이라고 한다.

  • 변수는 일단 하나의 자료형으로 정의되면 해당되는 종류의 데이터만 저장할 수 있음
  • 자료형을 크게 나누면 정수형(Interger type)과 문자형(Charater type), 부동 소수점형(Floating-point type)으로 나눌 수 있음
    • 정수형 : 정수 타입의 데이터
    • 문자형 : 하나의 문자 데이터
    • 부동 소수점형 : 실수 타입의 데이터
Read more »

C++?

  • C언어에 객체 지향 프로그래밍 기능을 추가하여 만든 언어
  • C언어만큼 효율적이고 속도가 빠르며 이식성이 좋은 절차적 프로그래밍(Procedural programming) 가능
  • 복잡한 프로그램을 작성하는데 매우 효과적인 방법으로 알려진 객체 지향 프로그래밍(Object-oriented programming) 가능
  • 템플릿을 이용하는 일반화 프로그래밍(Generic programming) 가능
Read more »