CSE/C Language
-
[C Language] 13. 비트 연산자 - C 언어CSE/C Language 2015. 6. 13. 10:11
1. 비트 연산자의 종류 - 비트 연산자는 모두 여섯 가지가 있으며 아래와 같다. ~ : 1의 보수 비트 연산자 ^ : XOR 비트 연산자 | : OR 비트 연산자 & : AND 비트 연산자 : 오른쪽 시프트 연산자 2. ~ 비트 연산자 '~'는 단항 연산자이기 때문에 하나의 항을 가지며 어떤 수에 '~' 연산자를 사용하면 결과는 1의 보수가 된다. 사용방법변경 전 변경 후 ~50000 0000 0000 0101 1111 1111 1111 1010 ~10240000 0100 0000 0000 1111 1011 1111 1111 3. ^ 비트 연산자 '^'는 이항 연산자이며 2개의 항을 가진다. 이것은 특정한 비트에 대해 XOR(Exclusive OR)을 수행하는데, 베타적 논리합이라고도 하며 아래와 같은..
-
[C Language] 12. 조건 연산자 - C 언어CSE/C Language 2015. 6. 13. 10:09
조건 연산자는 삼항 연산자라고도 하는데, 3 개의 항을 사용하여 연산하기 때문에 붙여진 이름이다. result = (expression) ? value1 : value2; expression에서 수식을 검사하여 참일 경우, value1의 값을 result에 할당하고, 그렇지 않으면 value2를 result에 할당한다. 아래 예제를 통해 확인해 보자. 12345678910111213141516171819202122/* * max.c * * Created on: 2015. 5. 11. * Author: root */ #include int main(void) { int one, two, result; puts("Input two numbers"); scanf("%d %d", &one, &two); resu..
-
[C Language] 11. 논리 연산자 - C 언어CSE/C Language 2015. 6. 13. 10:08
1. 논리 연산자의 종류 논리합(||) - 논리합은 두 항 중에 하나라도 참이면 그 결과값이 참이 되는 논리 연산자이다. 논리곱(&&) - 논리곱은 두 항 모두 참이여야 참이 되고, 둘 중에 하나라도 거짓이면 결과값은 거짓이 되는 논리 연산자이다. 논리부정(!) - 논리부정은 항의 결과값의 반대로 반전시킨다. 참이였다면 거짓으로, 거짓이면 참으로 반전시킨다. 2. 논리 연산 방법 xy 논리합(OR) 논리곱(AND) 논리부정(NOT) x 00 0 0 1 01 1 0 1 10 1 0 0 11 1 1 0 아래 간단한 예제로 확인해보자. 1. (7 == 4) || (5 == 5) : 오른쪽의 5 == 5가 참이므로 논리합에 의해 결과는 참이다. 2. (5 > 3) && (4 < 3): 왼쪽항의 결과는 참이나 오..
-
[C Language] 9. 증가 연산자와 감소 연산자 - C 언어CSE/C Language 2015. 6. 13. 10:07
1. 증감 연산자 ++i: 전치 증가 연산(i = i + 1 과 같다)i++: 후치 증가 연산--j: 전치 감소 연산(j = j - 1 과 같다)j--: 후치 감소 연산 위의 설명으로는 부족하므로 예제를 통해 설명을 보자. ex: i = 7, j = 5 일 때 1. a = i++ * 3;2. b = ++i * 3;3. c = i++ * 3; d = i++ * 3;4. e = --i + j++; 1번 식에서 a = 21을 출력한다. 그러나, 그 후 i 값은 8로 적용된다. 이 것이 전치 증가 연산이다.2번 식에서 b = 27을 출력한다. 그러고나서, i 값은 9로 적용된다. 이 것이 후치 증가 연산이다.3번 식에서 c = 27을 출력한다. d = 30을 출력한다. c 적용 시 i 값은 9로 곱셈을 하고 난..
-
[C Language] 8. 사칙 연산자와 나머지 연산자 - C 언어CSE/C Language 2015. 6. 13. 10:06
1. 사칙연산자의 종류 +, -, *, / abc = 5 + 17; // 22 def = 10 - 2; // 8 ghi = 11 * 6; // 66 jkl = 60 / 3; // 20 2. 주의사항 - 정수 나누기 정수는 정수이다. - 0으로 나눌 수 없다. 수학에서는 5 / 2에 대한 답은 당연히 2.5가 되지만, C에서는 2가 된다. 정수가 아니라 실수이기 때문에 소수점 이하를 저장할 수 없다. 2.5라는 값을 출력하기 위해서는 다음과 같이 사용해야 한다. 1. 5.0 / 2.0 2. 5.0 / 2 3. 5 / 2.0 4. 5. / 2. 아래 예제를 통해 위 연산을 직접 실행해보자. 1234567891011121314151617181920212223242526272829/* * float.c * * ..
-
[C Language] 7. 대입 연산자(Assign operator) - C 언어CSE/C Language 2015. 6. 13. 10:05
대입 연산자는 우변의 값을 좌변의 값에 대입할 때 사용하는 연산자이다. a = a + 1; 컴파일러에서는 위의 코드를 'a에 1을 더하고 그 결과 값을 다시 a에 넣는다'라고 해석한다. 1. 대입 연산자의 종류 - =, +=, -=, *=, /=, %=.... one = 0; two = 0; three = 0; 위 코드는 아래와 같이 줄여서 사용가능하다. one = two = three = 0; 일반 연산식축약형 연산식 설 명 i = i + 2;i += 2; i의 값을 2 씩 증가 x = x - 10;x -= 10; x의 값을 10 씩 감소 y = y * 5;y *= 5; y의 값을 5의 배수로 증가 * Programming in C 서적을 참고하여 작성하였습니다.
-
[C Language] 6. 연산자 개요(Introduction to operator) - C 언어CSE/C Language 2015. 6. 13. 10:05
1. 연산자 종류 연산자의 종류 및 해당 기호는 아래와 같다. 기능별 분류(연산자)기 호 부호 +, - 산술+, -, *, /, % 관계!, , =, ==, != 논리&&, || 캐스트(형이름) 증감++, -- 비트&, |, ^, , ~ 대입=, +=, -=, *=, /= 조건? : 쉼표, sizeofsizeof 위 연산자에 대한 간단한 설명. - *: 컴퓨터에서 일반적으로 곱셈 기호를 나타냄 - %: 나머지 연산자라고 하며 두 수를 나눈 나머지의 결과값을 얻는 데 사용한다. - =, !=, ==: 관계 연산자에서 같다(=)는 표시는 , !의 항상 오른쪽에 사용해야 한다. 또한, 비교 대상이 같은지 검사하기 위해서는 일반적인 수학 기호인 '='이 아니라 '=='이 사용된다. - &&, ||: 기호가 연속..