Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 스파르타
- 유니티공부
- c#코테
- unity3d게임만들기
- unity게임
- c#프로그래머스기초문법
- 오블완
- 유니티상호작용
- 유니티
- 티스토리챌린지
- c#기초문법
- c# 백준
- c#기본문법
- c#
- unity3d
- 유니티서바이벌게임만들기
- 유니티게임만들기
- 시샵문법
- c# c#프로그래머스
- unity공부
- c#코딩기초트레이닝
- c#문제
- 시샵
- 스파르타코딩클럽
- unity게임만들기
- unity3dservival
- Console.WriteLine
- 유니티3dui
- C#문법
- Unity
Archives
- Today
- Total
나 개발자 진짜 되냐?
[ C++ 기본 문법 2 ] 변수 선언 본문
반응형
다음은 가장 많이 나올 부분!
변수에 대해 알아보자
변수는 바구니!! 느낌인건
너무너무 쉽고 많이 했기 때문에 ㅎㅎㅋ 패스하고
변수 선언 방법
[ 타입 ] [ 이름 ];
[ 타입 ] [ 이름 ] = [ 초기값 ] ;
int hp = 100;
아주 쉽죠??
저번에 배운 출력을 떠올리며
체력이 hp만큼 남았다고 출력하려면 어떻게 해야할까?
cout << "체력이" << hp << "만큼 남았습니다.";
라고 해주면 된다.
바이트 종류에 대해 간단하게 설명하면
char | 1byte ( -128 ~~ 127 ) |
short | 2byte ( -32.768 ~~ 32.767 ) |
int | 4byte ( -21.4억 ~~ 21.4억) |
__int64 ( 언더바 두개 ) | 8byte ( 엄청엄청엄청엄청 크다 ) |
int 범위는
-21.4억 에서 21.4억 정도이다보니
대부분의 경우 int를 사용한다고 한다.
C#에서는 정수냐 실수냐의 차이로 float와 int를 사용했는데
여기는 약간 다른가보다.
이 친구의 문제는 딱 하나
만약에 short b로 선언해준 것에 b값이 32.767 이라고 치고
b+1 한값을 출력할때 값은
이론상 32.768이 나와야하는데
부호가 있다보니 논리적 계산에 의해
-32.768이 나온다
왜? 최상위비트는 부호비트이기 때문..!
=> 이 증상을 우리는 정수 오버플로우라고 한다.
그래서 새로운 친구가 등장한다.
위에 적어준 4개의 종류는 다 singed,
즉 부호가 있는 친구들이고 없는 친구들도 있다.
unsinged char | 1byte ( 0 ~~ 255 ) |
unsinged short | 2byte ( 0 ~~ 65,535 ) |
unsinged int | 4byte ( 0 ~~ 42.8억 ) |
unsinged __int64 ( 언더바 두개 ) | 8byte ( 0 ~~ 엄청엄청엄청엄청 크다 ) |
즉, 여기서는 최상위비트를 양수로 보겠다는 의미가 된다.
양수는 1이라는 표현이되고 부호이기 때문에 -가 붙게 된다.
❗❗ unsinged라고 필수적으로 사용해야하는건 아니다. ❗❗
반응형
'C++을 시작해봐요! > 문법정리를 해보았어요!' 카테고리의 다른 글
[ C++ 기본 문법 1 ] 입력과 출력 (0) | 2025.02.14 |
---|---|
C++로 코딩테스트를 보겠다고??? (1) | 2025.02.12 |