비트 연산을 하다보면 헤깔리는 경우가 많이 있습니다. 0x01과 0x0001과 0x00000001의 차이는 무엇일까요?
모두 int형이고 1을 뜻하므로 차이가 없습니다. 그리고 비트 연산을 할 때는 반드시 unsigned 형으로 하시기를 권합니다. 음수에 대해 >> 연산을 하면 왼쪽에 채워지는 숫자가 0이 될지 1이 될지 정해지지 않기 때문입니다. 따라서 0x01u 등으로 쓰는 것이 좋지요.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
모두 int형이고 1을 뜻하므로 차이가 없습니다.그리고 비트 연산을
모두 int형이고 1을 뜻하므로 차이가 없습니다.
그리고 비트 연산을 할 때는 반드시 unsigned 형으로 하시기를 권합니다.
음수에 대해 >> 연산을 하면 왼쪽에 채워지는 숫자가 0이 될지 1이 될지
정해지지 않기 때문입니다. 따라서 0x01u 등으로 쓰는 것이 좋지요.
댓글 달기