인터럽트 (interrupt) 현재 실행하고 있는 함수 호출자 (caller) 함수 호출을 하는 함수 수신자 (callee, called function) 호출되는 함수 반환 값 (Return value) int main() { ... return 0; } 함수를 작성할 때, 함수가 호출자(caller)에게 값을 반환(return)할지 말지 결정하게 된다. 함수 정의에 함수 반환 형식을 설정하면 된다. 반환 유형(return type)은 함수 이름 앞에 선언된 유형이다. 반환 유형은 특정값을 나타내지 않는다. 반환되는 값 유형을 나타낸다. 그런 다음 호출된 함수 내부에서 return 을 사용해서 호출자(caller)에게 반환되는 특정 값을 나타낸다. 함수에서 반환된 실제 값을 반환 값(return val..
cin character input cout character output L-Value 와 R-Value 일반적으로 대입 연산자(=)의 피연산자 중 왼쪽에 위치하면 l-value, 오른쪽에 위치하면 r-value라고 한다. l-value는 메모리상에서 지속적인 주소(위치)를 가진 값이다. 즉, 표현식(expression) 이후에도 없어지지 않고 지속된다. 변수들은 주소를 가지고 있으므로 모두 l-value다. 할당(assignment)을 수행할 때, 대입 연산자의 왼쪽 편은 l-value이어야 한다. 5 = 6; 위와 같은 코드는 5가 l-value가 아니므로 컴파일 오류가 발생한다. 값 5에는 위치를 가진 메모리가 없으므로 아무것도 할당할 수 없다. 5는 5를 의미하며, 값은 다시 할당할 수 없다. ..
참조(refefence)는 C++의 새로운 기능 중 일부이다. C 에서는 포인터를 사용했지만 포인터는 여러가지 문제점을 발생시킬 수 있는 기능이여서 C++에서는 굳이 포인터가 필요없을 때 더 안전하게 사용하기 위해서 참조(reference)를 사용한다. 참조(reference) 포인터를 사용하는 좀 더 안전한 방법 하지만 Java만큼 제한적이지는 않음 먼저 이것부터 살펴 보자 값에 의한 호출(call by value) 참조에 의한 호출(call by reference) 포인터(pointer) 값에 의한 호출(call by value) void swap(int arg1, int arg2) { int temp = arg1; arg1 = arg2; arg2 = temp; } void main() { int n..
초기 C++의 새로운 기능들 전혀 사용하지 않는 기능들이 매우 많음 현재에는 오직 소수의 기능만 알면 됨 bool 데이터형 (C++98, 모던C++) 참조(reference) 개체지향 프로그래밍(object-oriented programming) ... 그 외 등등 참조(reference)가 정말 중요한 기능이다. 개체지향 프로그래밍을 길게 봐야한다. 그런데 보통 많은 곳에서 `객체`라고 표현을 해놓았는데 이것은 오역이다. `객체`라는 표현은 주체, 객체 할 때 말하는 표현이지만 object-oriented programming은 어떤 물체를 말하는 것이기 때문에 `개체`라고 표현하는게 옳다. C++의 새로운 기능들 새로운 기능이 매우 많음 허나 대부분은 사용 되지 않음 C++ 표준 위원회는 모든 사람을..
get() 뉴라인 문자를 만나기 직전까지의 모든 문자를 가져옴 뉴라인 문자는 입력 스트림에 남아있음 // 99개 문자를 가져오거나 뉴라인 문자가 나올 때까지의 문자를 가져오고, // 가져온 문자들을 char 배열(firstName)에 배치함 get(firstName, 100); // 99개 문자를 가져오거나 '#'문자가 나올 때까지의 문자를 가져오고, // 가져온 문자들을 char 배열(firstName)에 배치함 get(firstName, 100, '#'); getline() 뉴라인 문자를 만자기 직전까지의 모든 문자를 가져옴 뉴라인 문자는 입력 스트림에서 버림 (이거만 'get()' 이랑 다름) getline(firstName, 100); getline(firstName, 100, '#');