-
[day1] Variables, 입출력 스트리밍C++ 2021. 7. 30. 12:27
Variables
1. 변수와 오브젝트
오브젝트 : 메모리에 할당되어있는 것 (things)
변수 : 데이터(data)를 저장하기 위해 프로그램에 의해 이름을 할당받은 메모리 공간
int x; (변수타입) (변수이름)
2. 변수 초기화(initialize) 와 변수 할당 (assignment)
과거에는 변수를 정의하고, 정의된 변수에 대해 값을 할당하는 방식이었던반면,
최근에는 변수를 초기화해서 사용한다. (변수의 초기화는 필수라고 생각하면 된다!)
변수 정의
변수 x를 위한 메모리 공간이 지정된다.
int x;
변수 초기화
변수 x를 위한 메모리 공간이 지정되는 동시에, 값이 저장된다.
int x = 10; // 변수를 정의하고 (이름을 붙여줌) , 그 변수에 최초의 값을 할당함 (초기화)
변수 할당
변수 x에 값을 저장한다.
int x = 10; x = 5; //변수 할당
3. L-value 와 R-value
일반적으로 대입 연산자(=)에 왼쪽에 위치하면 l-value, 오른쪽에 위치하면 r-value라고 한다.
left value = right value x = 1
L-value에는 변수가 저장되어진다. 즉, L-value는 변수의 메모리에 저장되어 있는 주솟값을 의미한다.
R-value에는 임시적인 값이 저장되어진다. 즉 R-value는 계산이 완료되고 사라지는 값이 저장된다.
int x = 20; x = x+10;
위와 같은 코드에서 x = x+10 을 살펴보자.
같은 x가 왼쪽, 오른쪽에 사용되었으나, 의미하는 바는 다르다.
왼쪽 x 는 변수 그 자체, 즉 컴퓨터 메모리 저장 위치를 의미한다. (변수는 메모리에 저장된 공간임을 확실히하자.)
오른쪽 x 는 값, 즉 변수 x가 갖고있던 값 10을 의미한다.
입출력 스트리밍
c++ 에는 2가지 입출력 방식이 있다.
1. iostream
cout
콘솔창에 값을 print하는 함수.
std 라는 namespace안에 내제되어있다. (name space는 :: 를 사용해 함수를 call한다.)
#include <iostream> int main(){ std::cout << "Hello, World" }
cout
사용자로부터 입력값을 받는 함수
#include <iostream> int main(){ int x; std::in >> x; }
'C++' 카테고리의 다른 글
0924 해쉬구현중 (with linkedlist) (0) 2022.09.24 [day2] C++ 준비운동 (함수, namespace 등) (0) 2021.08.03 [Mac]Visual Studio Code 설치하기 (0) 2021.07.25