• 식별자

"밑줄문자 두개"로 시작

"밑줄문자+대문자"로 시작

 

이 두가지는 예약어의 규칙에 속하기 때문에 훗날 문제가 될 수 도있으니

 

예약어 목록에 없다면 실행은되나 되도록 피하자

#include <iostream>

int main() {

	int __ABC = 3;
	int _Abc = 2;
	
	std::cout << __ABC << _Abc; //모두 출력 성공
	
	return 0;
}

 


 

  • 정수 자료형

소수부가 없는 자료형

 

char, short, int, long 같은 자료형, 크기는 컴파일러마다 다를 수 가 있다

 

 

※ 보통 8비트 = 1바이트 이지만 c++에서는 컴파일러의 기본 문자 세트를 수용할 수 있는 최소한의 비트수가 바이트!

ex) ASCII는 최소 8비트로 나타내므로 ASCII가 기본 문자 세트라면 8비트가 1바이트가 된다

 

정수 상수가 저장되는 자료형은 최소 int형이다

 

문자를 정수형으로 표현한다 (Char)

char형은 문자와 숫자를 저장한다

 

wchar_t형은 1바이트로 나타낼수 없는 문자를 위해 탄생

상수형은 접두사로 'L'이 붙는다

 


 

  • 멤버 연산자 (memvership operator)

객체의 멤버 사용할 경우 사용

 

ex) std::cout.puts(); 에서

1. " std::cout " // 2. " . "  // 3. " puts(); "

1.(객체)  2.(멤버연산)  3.멤버(함수)

 


 

  • const

상수, 값이 변화하지 않는다.

 

한마디로 데이터를 값이변하지않게 상수화 시킨다

 

그렇기에 무조건 선언과 동시에 정의로 초기화해야한다

[단 메모리에 올라갈때만 초기화 해주는듯 하다]

사용하지 않아 에러 X
바로 에러
해결

※클래스는 생성자에 이니셜라이저로 초기화, [ C++11 부터 바로 초기화 가능 ]

 

보통 관습으로 모두 대문자로 식별자를 만든다 

 

 

위치에 따라 상수화되는게 다르다!

const의 위치에 따라 어느게 상수화 되는지 달라진다

※ const int * == int const *

 

멤버 함수 한정으로 함수의 선언 뒤에 const를 붙일 수 있는데

붙이게 되면 함수 내에서 멤버변수를 변경할수 없게 만든다

접근지정자는 상관없다

 


 

  • 지수 표기법

ex) 314.234

가수부(기본값) 3.14234 // 지수부(스케일) E+3 ( 10의 3제곱이라는 뜻 )

=> 3.14234E+3  ( = 31.4234E+2 최종값이 똑같으면 가수부에 소수점을 어디에 찍든 상관없는듯하다 ) 

 

저장하는 방식은 위의 지수표기법과 비슷한데  [부호(0 or 1), 가수부(기본값), 지수부(스케일)]로 나누어 저장

 


 

  • 부동 소수점

부동자세의 움직이지 않는다는 느낌이 아닌

 

뜰 부, 움직일 동/ 공중에 떠서 (소수점이) 움직인다는 느낌 = 소수점을 움직이므로 여러 자리의 소수점을 표현 가능

 

※ 부동소수점 오차의 이유

https://ddidding.tistory.com/57

 


 

  • static_cast<> ()

자료형 변환

보통 형변환과 마찬가지로 사용한다고 데이터형이 영구적으로 바뀌는게 아니라 일시적이다

 

저렇게 상수를 포인터로 캐스팅하는건 안되나보다

 

주소연산자를 사용해서 다른 형의 주소로 캐스팅도 안된당

그냥 선형변환 후연산이 된다는 추가 사진


 

  • auto

"초기화 된 변수만" 자동으로 자료형을 추론해 정의해주는 키워드

 

편리하다! 하지만 아무곳이나 사용한다면 다른사람이나 훗날 코드를 본다면 욕나올듯

 

아직은 모르지만 나중에 복잡한 데이터형을 다룰때 가끔 사용할거같다

+ Recent posts