전역변수 전역변수의 특징 * 전역변수를 사용하는 가장 큰 이유는 접근성과 생명주기이다. * 전역변수는 메모리에서 데이터(data) 섹션에 들어가 있다. 정적 변수 또한 같다. * 전역변수는 프로그램이 시작될 때 생성되고, 프로그램이 종료될 때 삭제된다. * 값을 넣지 않으면 0으로 초기화된다. 분할 컴파일 and 전역변수의 단점 * 파일이 여러 개일 때 컴파일러는 각각의 파일을 따로 컴파일해서 오브젝트 파일로 만들고, 나중에 링킹 과정을 거쳐 하나의 실행파일로 만든다. * 전역변수는 데이터 영역에 들어가 있으며 다른 파일에서도 사용할 수 있다. 다른 파일에서도 사용할 수 있다는 점은 장점이지만, 다른 사용자가 사용하는 것을 막지 못한다는 점은 큰 단점이다. 누구나 사용하는 전역변수 * 프로그래머가 전역변..
해시 Hash 해시란? Hash~ * 해시는 해시 함수와 함수에서 나온 해시 값이 있다. 해시 함수에 매개변수로 들어가는 값은 크기와 자료형에 구애를 받지 않는다. 반환되는 해시 값은 의도적으로 고정된 길이의 데이터로 바뀐다. * 부동소수점형이나 길이가 고정되지 않은 문자열 등을 언제나 정수형으로 바꾸는 함수를 해시함수라고 할 수 있다. * 데이터 → 해시 함수 → 해시 값 * 해시 함수는 특정 값을 넣으면 언제나 같은 값을 반환한다. a를 넣어서 b가 나온다면, a를 몇 번을 넣어도 언제나 b가 나온다. * 하지만 a를 넣어도 b가 c를 넣어도 b가 나올 수 있다. 이는 매개변수의 폭은 넓은데 반환값은 고정된 크기로 바뀌는 데에서 기인한다. 해시를 사용해서 좋은 점 * 해시 함수를 사용하여 임의의 데이..