변수와의 첫만남.

phoenixKim·2021년 3월 5일
0

따빼씨

목록 보기
1/5

객체

컴퓨터에서 존재한다와 존재하지 않는다를 무엇으로 구분할 수 있들까?
정보는 메모리에 저장이 된다.
메모리에 저장이 되어 있는 정보 -> 객체로서 존재한다.

변수

변수란? 메모리를 가지고 있는 객체의 이름 / 수학적으로 변동하는 값 / 주소의 다른 이름

  • 코드
    int x : x는 숫자를 담을 수 있는 공간이 메모리에 존재한다.
    x = 123; // assignment;
    //같다는 의미가 아닌 대입을 뜻하는 것이다.
    //보다 정확한 의미는 x라는 이름이 가리키고 있는 메모리 공간에 정수 123이라는 숫자를 저장해 놓는다.

R-value vs L-value

: 메모리 주소를 프로그래머가 직접적으로 접근 가능한지에 따라 구분된다.

int x;
x = 123;

L-value : 메모리를 가지고 있는 것
R-value : 잠깐 존재하고 사라짐.

변수 초기화

int x;
cout << x; 하면

  • 결과 : 빌드조차 안된다.
    c++의 경우는 초기화를 시켜주지 않으므로 os가 메모리 초기화를
    해주라는 의미이다.
    심각도 코드 설명 프로젝트 파일 줄 비표시 오류(Suppression) 상태
    오류 C4700 초기화되지 않은 'x' 지역 변수를 사용했습니다. Bite c:\users\zzokk\onedrive\바탕 화면\씹어먹는c++\bite\bite\main.cpp 8

  • 변수 초기화를 해야 하는 이유 // 쓰레기값이 생기는 이유??
    : 메모리라는 것은 비주얼스튜디오만을 위한 것이 아니고 컴퓨터의 모든 프로그램이 공유하는 자원이다.(관리는 os가 한다.)
    어느(이전) 자원/어플/프로그램에서 사용한 메모리를 우리가 가지고 와서 사용할 수도 있는데, 이때는 이전 프로그램에서 사용한 데이터가 해당 메모리에 들어가 있다. 이 값을 쓰레기값이라고 한다.
    쓰레기값 방지를 위해 초기화를 진행해야 한다.
    초기화를 하지 않으면 빌드조자 안된다...

초기화와 할당

int x = 123; int x(123); //초기화를 뜻함.
x = 5; //할당을 뜻함

Debug 모드, Release 모드

debug : 개발자 확인용
Release : 배포용

함수 안에서 함수를 정의할수는 없다...

profile
🔥🔥🔥

0개의 댓글

관련 채용 정보