const int *a; int const *b;
위의 두 변수 차이점이 무엇인가요?
http://www.parashift.com/c++-faq-lite/const-correctness.html
C faq에 있었네요. 감사합니다.
똑같습니다.
bacchusf님이 링크거신 글의 18.5가 이에 해당 하겠군요.
const int *a; 는 *a값이 const라는 의미입니다. 그러므로 *a의 int 값은 변할 수 없지만 a값(주소값)은 변할 수 있습니다.
int const *b 는 b값이 const라는 의미입니다. 그러므로 b값(주소값)은 변할 수 없지만, *b의 int값은 변할 수 있다는 의미가 됩니다.
두번째 설명은 int *const b 에 해당합니다.
int *const b; b = &c; -> error *b = 10; ok
앗~ 주의해서 보질 못 했네요. 맞습니다. const int *a 와 int const *a는 같은 의미입니다.
텍스트 포맷에 대한 자세한 정보
<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]
search google...
http://www.parashift.com/c++-faq-lite/const-correctness.html
C faq에 있었네요.
C faq에 있었네요. 감사합니다.
똑같습니다.
똑같습니다.
bacchusf님이 링크거신
bacchusf님이 링크거신 글의 18.5가 이에 해당 하겠군요.
const int *a;
는 *a값이 const라는 의미입니다. 그러므로 *a의 int 값은 변할 수 없지만 a값(주소값)은 변할 수 있습니다.
int const *b
는 b값이 const라는 의미입니다. 그러므로 b값(주소값)은 변할 수 없지만, *b의 int값은 변할 수 있다는 의미가 됩니다.
두번째 설명은 int
두번째 설명은 int *const b 에 해당합니다.
int *const b;
b = &c; -> error
*b = 10; ok
앗~ 주의해서 보질 못
앗~ 주의해서 보질 못 했네요. 맞습니다. const int *a 와 int const *a는 같은 의미입니다.
댓글 달기