ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 0, '\0', NULL의 차이점을 알아보자
    개발하면서/etc 2009. 9. 11. 10:20
    반응형
    세개를 볼때......'어? 같은말 아니야?'라고 생각했었다.   그런데 어느 한 사이트에서 다르다는 말을 보게 되었고
    또 나름 정리하고 내생각을 적어보려한다




    NULL은 매크로형이며, (void *)0 으로 선언되어 있다. 이것은 포인터에서만 사용해야지 다른곳에 사용하면
    문제를 야기할수 있다. 값이 0이라기보다 아무것도 가리키지 않는다는 표현이 맞다.

    0은 숫자가 될수도 있고(즉 nul이 될수도있다는 얘기)
           null pointer constant도 될수있다. 포인터나 문자나 사용 가능

    '\0'은 문자상수, 아스키 코드의 첫번째 문자를 의미한다, nul을말한다 (NULL과 헷갈렸구나~~!!)

    내 나름대로 정의를 내리자면, 초기화할때
    포인터는 NULL이나 0, 문자열은 0이나 '\0', ""





    참조 사이트
    http://faq.cprogramming.com/cgi-bin/smartfaq.cgi?answer=1047589067&id=1043284376
    http://kldp.org/node/28150#comment-75090


    이 글은 저의 이해 및 정리한 것이므로 사실과 다를 수 있습니다.
    틀린점은 지적해주시면 감사하겠습니다
    반응형

    댓글

Designed by Tistory.