포인터....

finenao의 이미지

typedef unsigned long U32;
typedef unsigned short U16;
typedef unsigned char  U8;


void function(U32 max, U8 *Data)
{
     ........중략
     RegValue = (U16)((*(Data)) & 0x00FF);
     ........중략
}

나름대로 해석을 해보았습니다.
0x00FF번지의 Unsigned char형 변수Data의 포인터로 선언된 값을 Unsigned short형으로 한다? 제가 해석한 방법이 맞는지.......무지 헷깔립니다. 조언 부탁드립니다.

M.W.Park의 이미지

pOutData (pointer 겠죠?)가 가리키는 곳의 값을 char( U8 )로 읽어와서 0x00ff로 mask한 다음에 unsigned short(U16)형의 RegValue에 대입하는 것같군요.8)
해보진 않았습니다.
테스트 코드로 pOutData = "ABCDEF"; 를 넣고 한번 돌려보면 금방 답이 나올것같네요.^^;

-----
오늘 의 취미는 끝없는, 끝없는 인내다. 1973 法頂

최종호의 이미지

잘못된 구문이라서 컴파일 오류가 납니다.

(U8 pOutData) 부분만 보더라도

(unsigned char pOutData) <- 이건 변수 정의나 파라메터 선언에나

나올 수 있는 구문이겠죠...

돌아가는 코드를 그대로 옮기신 건지, 아니면 본인이 생각해 내신 코드인지..

대충 의도로 보면 16 바이트 값의 하위 바이트만을 얻어오려고 한 듯 합니다.

finenao의 이미지

최종호 wrote:
잘못된 구문이라서 컴파일 오류가 납니다.

(U8 pOutData) 부분만 보더라도

(unsigned char pOutData) <- 이건 변수 정의나 파라메터 선언에나

나올 수 있는 구문이겠죠...

돌아가는 코드를 그대로 옮기신 건지, 아니면 본인이 생각해 내신 코드인지..

대충 의도로 보면 16 바이트 값의 하위 바이트만을 얻어오려고 한 듯 합니다.

정정해서 다시 올립니다. 물론 제가 생각한 코드입니다.

팔공산 아래에도 사람은 산다.

cdpark의 이미지

고친 코드가 원하는 바라면

RegValue = *Data;

로도 같은 결과를 얻을 수 있어 보이는데요?

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.