전체 글 (71) 썸네일형 리스트형 [C++] 1-13 스토리지 클래스 (auto, register, static, extern) 스토리지 클래스 유형 지역 변수와 전역 변수는 스토리지 클래스(storage class)의 유형에 따라 세분화되며, 이들 각 변수들은 메모리상에서 존속하는 기간이 다르다. 지역변수: auto, register, static 변수 전역변수: static, extern 변수 변수의 종류 예약어 기억 장소 존속 기간 변수의 구분 선언 위치 auto 변수 auto 스택(stack) 영역 일시적 지역 변수 함수 내부 register 변수 register register 영역 일시적 지역 변수 함수 내부 내부 static 변수 static static 영역 영구적 지역 변수 함수 내부 외부 static 변수 static static 영역 영구적 전역 변수 함수 외부 extern 변수 extern static 영역 .. [C++] 1-12 함수의 지역 변수 / 전역 변수 설명 및 예제 개요 변수는 선언된 위치에 따라 지역 변수 (local variable)와 전역 변수 (global variable)로 나눌 수 있다. 지역 변수는 함수 내부에서 선언되며 선언된 함수 내부서만 사용되고 다른 함수에서는 사용할 수 없다. 반면 전역 변수는 함수 외부에서 선언되며 모든 함수에서 사용할 수 있다. (참고로 C++에서 변수 선언은 함수의 시작 부분에 선언하는 것이 바람직한 프로그램 작성법이라 할 수 있다.) 지역변수 지역 변수는 함수 내부에서만 사용되기 때문에 동일한 이름의 변수가 서로 다른 함수의 내부에서 사용되더라도 충돌이 발생하지 않는다. 따라서 함수를 이용해서 프로그래밍하는 경우, 지역 변수를 사용하면 함수의 독립성이 유지된다. 만일 동일한 이름의 변수가 지역 변수와 전역 변수로 동시에 .. [C++] 1-11 함수의 디폴트 매개변수 함수의 디폴트 매개변수 C++에서는 함수의 매개변수를 디폴트(default) 값으로 지정할 수 있다. 디폴트 매개변수란 함수의 원형 선언 및 함수의 정의에서 매개변수에 값을 지정해 두는 것을 말한다. 함수의 매개변수를 디폴트 값으로 지정해 두면 함수 호출 시 매개변수 값을 넘겨주지 않아도 디폴트로 지정된 매개변수 값이 피 호출 함수로 넘어가게 된다. 예제 1 #include using namespace std; void sub(int a = 10, int b = 20, int c = 30);//인수의 디폴트 값 지정 int main() { sub();//매개변수 모두를 디폴트 값으로 지정 sub(5);//매개변수 b, c를 디폴트 값으로 지정 sub(5, 15);//매개변수 c를 디폴트 값으로 지정 su.. 이전 1 ··· 13 14 15 16 17 18 19 ··· 24 다음