Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
29 | 30 | 31 |
Tags
- c언어
- 인공지능
- 파이썬신경망
- 활성화함수파이썬
- C알고리즘
- 달고나bof
- 신경망
- 머신러닝
- 밑바닥부터시작하는딥러닝
- 신경망구현
- 보안
- 정보보안
- 딥러닝파이썬
- 소프트맥스함수
- 신경망 학습
- C언어알고리즘
- BOJ
- 파이썬
- 백준알고리즘
- 스트림암호
- BOF
- 8086CPU레지스터
- 신경망파이썬
- 항등함수
- 백준
- FTZlevel10
- C언어 알고리즘
- 버퍼오버플로우
- 딥러닝
- 알고리즘
Archives
- Today
- Total
HeeJ's
[01] const :: C언어 본문
const는 변수 앞에 붙여 값과 주소를 변경할 수 없도록 해준다.
해당 변수를 상수로 취급한다.
변수의 초기 값을 변경할 수 없는 변수; 상수 or const 상수
int max;
max = 10;
이라는 코드가 있다.
여기에 상수 변수를 선언해보면
const int max;
max = 10; //에러
선언 이외의 값을 지정해주게 되면 오류가 생기게 된다.
const int max = 10;
max = 20; //에러
선언과 동시에 초기화해도 되며
이 이후에도 상수 값을 변경하면 오류가 생기게 된다.
const 포인터 변수
const int* max = &value;
혹은
int* const max = &value;
로 표현할 수 있다.
위의 경우는, 포인터 변수 안의 값을 변경할 수 없고,
아래의 경우는 포인터 변수의 주소값을 변경할 수 없다.
int value = 10;
const int *max;
max = &value;
*max = 20; //에러
int value = 10;
int* const max = &value;
max = &value; //에러
*max = 20;
포인터 변수 안의 값과 주소값을 모두 변경할 수 없도록 하려면
const를 두 번 붙여주면 된다.
const int* const max = &value;
int value = 10;
int* const max = &value;
max = &value; //에러
*max = 20; //에러
'<Programming> > <C>' 카테고리의 다른 글
[02] error C2078: 이니셜라이저가 너무 많습니다 (1) | 2020.02.13 |
---|