반응형
SMALL

3.2.4 대입연산자 assignment operator

'='을 사용하여 구성되며, 연산자의 오른쪽을 왼쪽에 대입하는 데 사용

수식을 압축하여 간단하게 기술할 수 있으므로 프로그램의 길이는 짧아지고 실행 속도도 빨라진다.

#include <stdio.h> 
void main(){ 
int a = 10, b = 3, c = 1; 
a *= (b -1); // a= a * (b - 1)의 의미 
b /= 2 + 3;  

/* b = b/(2+3)이고 정수형끼리의  
나눗셈이므로 결과는 0 이딤 */ 
c += 2; // c = c + 2  
printf("a = %d, b = %d, c = %d", a, b, c); 
}

 

 

3.2.5 조건 연산자 conditional operator

주어진 조건의 만족 여부에 따라 지정된 수식을 수행하는 연산자로서 3개의 피연산자를 취하는 3항 연산자이다.

수식은 명령이나 연산식 등이 사용될 수 있으며 '?' 와 ' :' 이 조합으로 구성된다.

 

- 형식 : (조건)? 수식1 : 수식2 ;

- 사용 예 : x = (5 > 2 ) ? 1 : 0;

- 기능 : 조건이 성립하면 (참이면) 수식 1을 수행하고, 조건이 성립되지 않으면 (거짓이면 ) 수식 2를 수행한다.

 

#include <stdio.h> 
void main(){ 
int a = 10, b; 
b = ( a>15) ? (a+1) : (a-1);

// 조건을 만족하지 않으므로 a - 1을 수행 
printf("b = %d", b); }

 

 

3.2.6 비트 연산자 bitwise operator

수치를 2진수로 변환하여 bit 단위의 연산을 수행하는 연산자

비트 연산자는 정수형 자료에서만 사용 가능

x 1 0 1 1 0 0 1 1
y 0 1 0 0 1 0 0 1
x&y 0 0 0 0 0 0 0 1
x|y 1 1 1 1 1 0 1 1
x^y 1 1 1 1 1 0 1 0
~x 0 1 0 0 1 1 0 0
x << 2 1 1 0 0 1 1 0 0
x >> 2 0 0 1 0 1 1 0 0

 

3.2.7 기타 연산자 

(1) sizeof() 연산자

- 형식 : sizeof(자료)

- 사용예 : sizeof(int)

- 기능 : 지정한 자료(자료형, 상수, 변수, 수식)에 대한 기억장소의 크기를 구한다.

 

#include <stdio.h> 
void main(){ 
float a = 3.14;

printf("int형의 크기는 = %d 바이트 \n", sizeof(int)); 
// int 형의 자료 크기를 출력 
printf("float형 변수 a의 크기는 = %d바이트 \n", sizeof(a)); 
//float형인 a의 크기를 출력   }

 

(2) cast 연산자 (형변환 연산자) 

'자동 형변환' 과 '강제 형변환'이 있는데,

자동 형변환은 컴파일러에 의해 자동으로 발생하는 형변환이고,

강제 형변환은 cast 연산자를 사용해 프로그래머가 형변환을 명시해서 강제로 변환이 일어나는 것

 

 

3.2.8 연산자 우선순위

하나의 연산식에 여러개의 연산자가 사용될 경우에는 연산자 우선순위에 따라 연산이 이루어진다.

또한 우선순위가 같은 연산자가 연속적으로 나열되어 있는 경우에는 연산자의 결합 방향에 의거하여 연산이 이루어진다.

반응형
LIST

+ Recent posts