#20220525
chapter 45,46,47,48
#.45
#include <stdio.h>
int main(void)
{
int a = 0;
int b = 3;
int c = 1;
if (--a && c++ || --b)
{
printf("It's true!\n");
}
printf("%d, %d, %d\n", a, b, c);
return 0;
}
** 결과 -> It's true! -1 3 2
: 왼쪽부터 실행, a -1 = -1, c+1 =2 / a이고 c는 거짓이므로
--b 평가안함 3 즉 -1 3 2 출력
#46. 범위(scope)
블록 범위와 변수 위치
: 함수 중간에 블록을 열고 변수 선언 가능
: 함수 시작 지점에 모든 변수를 선언하면 실수할 여지가 있음.
: 블록을 이용해서 함수 중간에 선언하는 것도 하나의 방법
: 모든 변수의 이름 다르게 지을 것!
파일 범위에 있는 변수의 메모리 위치

전역변수
#48. const 키워드
const ! best!
- 기본적으로 모든 변수에 const를 붙임
- 정말 값 변경이 필요한 변수에만 const 생략!
int rist(const int id) {
~~~
int age = db_get_age(id);
int amount;
id *= 2; /*컴파일 오류남!*/
}
void update(int w, int h, int data[])
{
int i=0
const int area = w * h;
# 지역변수를 const로 만들었기 때문에 더이상 바꾸지 않겠다 명시!
area = area+1; /*컴파일 오류*/
}