가끔 어떠한 함수에서 인자에 const가 붙은걸 볼 수 있다.
예를들면 이런거다.
long hash(const unsigned char* s)
{
long hash = 0;
int c;
while (c = *s++)
{
hash = (((hash << 5) + hash) + c) % MAX_TABLE;
}
return hash % MAX_TABLE;
}
이 의미는 대~~~~충 설명하자면,
이 함수에서 const가 붙은 변수는 수정이 불가능합니다! 라고 알려주는거다.
이 함수에서는 참조(reading)만 하겠다는 의미이다.
실제로 함수 내부에서 변경을 시도하면, 컴파일 에러가 난다.
'프로그래밍 > C, C++' 카테고리의 다른 글
C++ 구조체 Priority Queue (0) | 2021.07.20 |
---|---|
쉽게 짠 구조체 Insertion Sort (0) | 2021.07.13 |
inline 함수란 무엇인가? (0) | 2021.05.25 |
문자열에서 정수로 바꾸기. strcmp 없이 정수로 비교하기 (0) | 2021.05.25 |
[C언어] 팩토리얼을 반환하는 함수 만들기 (0) | 2021.04.06 |
댓글