이 코드는 무슨 의미인가요?

iadoy의 이미지

VC++에서 사용하는 겁니다.
WORD 는 unsigned short 을 define한 거구요.

struct WORDBITMAP
{
                WORD            Bit00 : 1;    <--- 무슨 의미인지???? :(콜론)1????
		WORD            Bit01 : 1;
		WORD            Bit02 : 1;
		WORD            Bit03 : 1;
		WORD            Bit04 : 1;
		WORD            Bit05 : 1;
		WORD            Bit06 : 1;
		WORD            Bit07 : 1;
		WORD            Bit08 : 1;
		WORD            Bit09 : 1;
		WORD            Bit10 : 1;
		WORD            Bit11 : 1;
		WORD            Bit12 : 1;
		WORD            Bit13 : 1;
		WORD            Bit14 : 1;
		WORD            Bit15 : 1;
};
 
WORDBITMAP	wb;
 
// shortint는  short로 선언된 변수입니다. 
memcpy(&wb, &shortint, sizeof(WORD));
 
char c[16] = {0,};
 
c[0] = wb.Bit00+'0';      <--- '0'을 더하는 이유가 뭐죠???
c[1] = wb.Bit01+'0';
c[2] = wb.Bit02+'0';
c[3] = wb.Bit03+'0';
c[4] = wb.Bit04+'0';
c[5] = wb.Bit05+'0';
c[6] = wb.Bit06+'0';
c[7] = wb.Bit07+'0';
c[8] = wb.Bit08+'0';
c[9] = wb.Bit09+'0';
c[10] = wb.Bit10+'0';
c[11] = wb.Bit11+'0';
c[12] = wb.Bit12+'0';
c[13] = wb.Bit13+'0';
c[14] = wb.Bit14+'0';
c[15] = wb.Bit15+'0';
beta의 이미지

WORD Bit00 : 1; <--- 무슨 의미인지???? :(콜론)에 1????

> 비트 1개를 의미합니다.

c[0] = wb.Bit00+'0'; <--- '0'을 더하는 이유가 뭐죠???

> c[0] 에 '0' 문자를 넣고 싶은겁니다.

고로 2 byte WORD를 16 바이트 문자열로 바꾸거 싶은겁니다.

예를 들어 wb 가 0x0001 이라면
char c[17] = {0,};로 하고 출력해 보면 아마도 "0000000000000001" 이런 문자열이 들어있겠죠?

발 담갔다. 이제 익숙해 지는길만이..

iadoy의 이미지


WORD = unsigned short = 2byte = 16bit
16bit 중에 1bit만 사용한다는 말이군요.

답변 감사합니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.