[PL] Ch07. Expressions & Assignment Statements - 2

dev-0eum·2023년 12월 16일
0

PL

목록 보기
3/4
post-thumbnail

07-4. Relational and Boolean Expressions

  • 관계 연산자 (relational operator)
    : 두 개의 operands의 value를 비교

  • 관계식 (relational expr)
    : Two Operands with an Operator
    -> values have boolean type each

[Type] >> Numeric / String / Ordinal(순서)

  • JS & PHP는 특이한 boolean을 갖는다.
== // with coercion
!= // : String >> Numeric
"7" == 7 // true

=== // without coercion
!==
"7" === 7 // false

07-5. Short-Circuit Evaluation

모든 연산을 평가하지 않고 결정되는 평가
예시로 이해하는 게 빠를 것이다

(13 * a) * (b / 13 - 1)

a=0 이라면 (b / 13 - 1)은 평가되지 않아도 모든 연산이 평가된다.

(a >= 0) && (b < 10)

boolean에서도 동일하다.


07-6. Assignment Statements

  • Conditional Target
($flag ? $total : $subtotal) = 0
  • Compound Assignment Operator
a = a + b
a += b // compound
  • Unary Assignemnt Operator
count++
  • Assignment Operator as Expr.
while((ch = getchar() != EOF) {...}
// ch = getchar()
  • Multiple Assignments
($first, $second, $third) = (20, 30, 40);

07-7. Mixed-Mode Assignment

profile
글을 쓰는 개발자

0개의 댓글