기본적으로 연산자의 종류는 산술, 증감, 논리, 비교연산자가 존재합니다.
산술연산자는 말그대로 더하기, 빼기, 곱하기, 나누기에 더해 나머지를 구하는 %연산자가 존재합니다. 예를들어10%3
의 경우 10을 3으로 나눈 나머지인 1이 결과값이 됩니다. 또한, 증감연산자는 ++, -- 등이 있으며, 위치에 따라 사용방법이 달라집니다.a++는 후위 증가 연산자로, 먼저 현재 a의 값을 표현식에서 사용한 다음에 a를 증가시킵니다. 예를 들어, a가 처음에 5이면, 표현식 a++ 2는 먼저 5에 2를 곱하여 10을 얻은 다음 a를 6으로 증가시킵니다. 반면에, ++a는 전위 증가 연산자로, 먼저 a를 증가시키고, 증가된 값을 표현식에서 사용합니다. 예를 들어, a가 처음에 5이면, 표현식 ++a 2는 먼저 a를 6으로 증가시킨 다음 6에 2를 곱하여 12를 얻습니다.아래에 산술연산자와 증감연사자를 표로 정리해 놓았습니다.
논리연산자는 NOT, AND, OR이 있습니다. NOT은 !로 표현하며, AND는 &&, OR은 ||로 표현합니다. 또한 비교연산자는 <, >, <=, >=가 있습니다. 주의해야 할 점으로 equal을 의미하는 '같다'는 =가 아닌 ==로 표현합니다. 산술, 증감, 논리, 비교연산자 외에도 비트, 비트시프트 등의 연산자가 존재하지만, 지금은 다룰 부분이 없을것으로 생각되네요 ㅎㅎ
조건문의 경우는 크게 if와 switch문이 존재합니다.
if 문의 경우 아래와 같이 작성해 사용합니다.
if(a<5){ 실행코드1; } else if(a==5){ 실행코드2; } else{ 실행코드3; }
if문의 경우에는 만약 a가 5보다 작다면, 실행코드 1을 실행시키고, 만약 a가 5라면 실행코드2를 실행시키며, 그 외의 모든 경우는 실행코드3을 실행시키게 됩니다.
switch문의 경우는 아래와 같이 사용합니다.
switch(변수) { case 값1: 실행코드1; break; case 값2: 실행코드2; break; default: 기본 실행코드; }
switch문의 경우 case 뒤에 있는 값1,2에 의해 실행하게 되는 case가 달라지게 됩니다. 또한, switch문의 경우 break를 사용해 실행코드를 빠져나올 수 있게 만들어 줘야 합니다. 또한, if문의 else처럼 모든 case에 부합하지 않을 경우 기본 실행코드를 실행하게 되며 else문과는 다르게 코드를 따로 작성해 주어야 합니다. (실제로 if문의 경우가 더욱 활용빈도가 높습니다.)
삼항 연산자는 항이 3개인 연산자이며 사용방법은 아래와 같습니다.
조건 ? 조건이 참일 때 실행할 코드 : 조건이 거짓일 때 실행할 코드;
score=='F' ? std::cout << "재수강" : std::cout << "good";
score가 F인 조건을 만들어 주고, 만약 score가 F라면 재수강, 그 외의 경우에는 good을 출력하게 됩니다.