일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- c#
- 포인터
- Programming
- 김성엽
- 지식나눔강좌
- Tips강좌
- tipssoft
- 알고리즘
- c
- Desktop
- 프로그래밍
- Visual Studio
- 배열
- Tips프로그래밍강좌
- 티스토리
- 연산자
- Direct2D
- Win32
- VS ERROR
- Javascript
- 함수
- 백준
- 리뷰
- Windows
- c++
- doit코틀린프로그래밍
- 문법
- 이지스퍼블리싱
- CS
- Kotlin
Archives
- Yesterday
- Today
- Total
F.R.I.D.A.Y.
NULL 널문자 0 본문
반응형
사는 것에 있어서 '의미'라는 것은 굉장히 중요하다. 그런 의미에서 NULL과 널 문자, 0이 가지는 의미에 대해 알아보자.
1. NULL
#define NULL ((void *)0)
NULL은 타입이 void *인 0이다. 포인터는 주소에 대한 타입이니 주소가 0인 것을 NULL로 생각할 수 있다. 결론적으로 C/C++에서 NULL은 키워드등의 문법이라기보다 전처리상수라고 표현함이 적절할 듯 하다.
2. NULL(널) 문자
ASCII 코드표에서 코드 0에 해당하는 문자이다.
3. 0 (숫자)
숫자 0.
NULL은 주소(포인터) 타입, 널문자는 문자(char, 캐릭터) 타입, 숫자 0은 정수(int)타입이다. 세가지 모두 값으로 따지면 0이지만 의미상에 있어 차이를 보인다. 이러한 차이는 혼자 개발하는 것이더라도 추후에 그 값이 무엇을 뜻하는지를 파악하는데 있어 굉장히 중요하기 때문에 올바른 의미를 가진 값을 가지는 것이 중요하다.
- C++에서는 단순히 0으로 선언되어있다. 이유는 nullptr 이 새로 생겼기 때문 [본문으로]
728x90
반응형
'DEV > C C++' 카테고리의 다른 글
클래스(class) (0) | 2019.01.25 |
---|---|
Q strlen 구현하기 (0) | 2019.01.25 |
헤더파일 만들기 (0) | 2019.01.24 |
KaKao 블라인드 테스트(하) (0) | 2019.01.19 |
for의 진행방식 (0) | 2019.01.15 |
Comments