Busan IT/제어언어2015. 2. 24. 13:16

디버깅(Debugging)과 논리연산자

 

#1. 디버깅(Debugging)

 

디버깅(Debugging) 계속.

 

p/156 예제.

 

//최적화를 위해 초기화는 사용직전에 해주는 것이 좋다.

 

watch창을 통해 변수와 조건문의 상태를 확인해본다.

Do~while문은 중괄호에 있는 명령어를 반드시 한번은 실행되어야 할 때 쓰인다.

#2. 디버깅(Debugging)

 

p/164 for(반복문)

 

whilevs. for

 

입맛에 맞춰서 쓰면 된다!

 

p/166 예제 debugging

 

노란 화살표는 다음 수행될 행을 가리킨다.

 

디버그에 있는 watch창을 통해 모든 변수의 변화과정을 볼 수 있다.

 

 

#3. 조건문

 

p/179 조건문 예제

 


보안상 문제로 scanfcompiler에서 막는 경우가 있다. 이것을 해지하기 위해 #pragma를 쓰면 된다. ex) #pragma warning(disable:4996)

 

// 에러 코드가 뜨면 해당 코드를 인터넷에 검색하여 문제점을 해결한다.

 

//출력하는 명령어를 사용하지 않더라도 어떤 특정 값이나 변수를 입력하면 CPU에서는 그에 해당하는 작업을 수행한다.

 

논리적으로 범위가 한정된 조건문에서는 else if를 사용하여 compiler가 비교하는 횟수를 최소화함으로써 효율적인 코딩을 할 수 있다.

 

p/182 예제

#4. 논리연산자

 

논리 OR에서 값이 어떻게 변화하는지 알아보자.

OR인 경우 앞에 값이 참인 경우 뒤에 것을 수행하지 않는다.

 

CPU에서 최적화를 위해 || 뒤에 있는 명령어를 수행하지 않는다.

 

때문에 이러한 경우를 피하기 위해서는 여러 연산자를 한 줄에 적지 않는 것이 좋다.

 

p/187 삼 항 연산자

 

물음표(?):(콜론)의 조합

 

-> A ? B : C

= 조건 ? 참일 때 수행 : 거짓일 때 수행

= if(A)

{

B

}

else

{

C

}

 

삼 항 연산자를 쓰는 것은 추천하진 않지만 부득이하게 코딩의 양을 줄이기 위해 사용해야 하는 경우가 있다.

 

p/188 삼 항 연산자 예제


 

continue문은 continue가 적힌 자리에서 나머지는 수행하지 않고 반복조건으로 돌아간다.

break문은 가장 가까이 있는 반복문을 빠져 나간다.

 

 

 

 

 

 

반응형
Posted by newind2000