3.연산자, 수식, 문장
3.1.연산자
3.1.1.연산자 종류 및 사용방법
3.1.2.연산 우선순위와 계산 순서
http://prof.dongju.ac.kr/syhong/public_html/teaching/c/c04.htm
3.2.수식 및 문장
3.2.1.암묵적 자료형 변환
-형 변환은 프로그래밍에서 자료형을 다른 형태로 변경하는 것. 필요에 따라서 자동적으로 변경되는 암묵적 형 변환(암시적 형변환, 자동 형변환)과 프로그래머가 직접 변경하는 명시적 형변환으로 크게 두가지로 나뉨.
암묵적 형변환은 컴파일러가 자동으로 변환하는 형변환. 예를 들면 복수 데이터 형태가 사용될 때 상위 데이터의 형태로 자동 변환된다.
예시
double d;
long l;
int i;
...
if(d > i) d = i;
if(i > l) l = i;
if(d ==l) d*=2;
위 c코드에서 d,l,i는 다른 데이터형을 가지고 있지만, 모든 연산은 자동적으로 같은 형태로 변환된 다음에 진행된다.
예시2.
int i = 3.14; //( i == 3)
double d = 1; //( d == 1.000000 )
char c = 129; //( c == -127 )
위 C코드처럼 int(정수)형 변수에 double(부동소수점)형 데이터를 넣으면 소수점 이하의 값이 없어지게 된다. (프로그램은 이런 상황에서 비효율적인 반올림을 사용하지 않고 데이터를 버린다.)
또한, 대입한 데이터가 자료형으로 표현할 수 있는 범위를 벗어나는 경우 데이터의 일부를 잃어버리게 된다.
3.2.2.명시적 자료형 변환
명시적 형변환은 프로그래머가 명시적으로 형변환을 요청하는 형태의 변환으로 강제 형변환이라고도 한다.
예제
int a = 10;
int b = 20;
double f = a/b; // f = 0.0
doble g = (double)a/b; // g = 0.5
f는 a/b(10/20)의 결과인 0이 대입된것이고, g는 명시적 형변환으로 double형이 된 a와, 그와 계산하기 위해 암묵적 형변환으로 double형이 된 b가 계산되어 실수/실수의 계산으로 0.5의 결과가 나왔다.
3.2.3.수식과 문장
ㄱ.문장
연속적인 실행을 제어하고 수식을 평가, 또는 아무것도 하지 않으며 세미콜론으로 끝남.
예:x = a+b;
-탭, 빈칸, 띄어쓰기와 같은 공백문자는 문장에서 무시됨
-복합문은 하나의 문장처럼 동작하며 중괄호( { } ) 를 사용함.
-선택문(조건문), 반복문, goto문 등이 존재함.
ㄴ.수식
상수, 변수, 연산자의 조합으로 연산자와 피연산자로 나누어진다.
z = x + y 처럼, 연산자(+)와 피연산자 (x, y)로 나누어진다.
3.2.4.복합문
중괄호를 사용하여 문장들을 그룹핑한 것으로, 블록이라고도 한며 단일문 대신 들어갈 수 있다.
주로 조건문에서 한개의 조건을 만족할 때, 여러개의 문장을 실행하는 경우 사용한다.
예
if(i>0)
{
i++;
printf("hi\n");
}
3.3.흐름제어
생략
---
너무 반복되는 내용들이라 많이 생략했습니다
'학위공부 > 독학사 요점정리' 카테고리의 다른 글
[독학사/컴공/객체지향프로그래밍]7.객체 (0) | 2020.06.29 |
---|---|
[독학사/컴공/객체지향프로그래밍]6.클래스와 객체 (0) | 2020.06.29 |
[독학사/컴공/객체지향프로그래밍]4.변수선언 (0) | 2020.06.29 |
[독학사/컴공/객체지향프로그래밍]3.자료형 (0) | 2020.06.29 |
[독학사/컴공/객체지향프로그래밍]2.객체지향 언어의 특징 (1) | 2020.06.29 |