해당 문서는
인프런 [C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
을 듣고 정리한 필기 노트입니다.
// byte(1바이트 0~255), short(2바이트 -3만~3만), int(4바이트 -21억~21억), long(8바이트)
// sbyte(1바이트 ~128~127), ushort(2바이트 0만~6만), uint(4바이트 0억~43억), ulong(8바이트)
int hp;
hp = 100
Console.WriteLine("{0}", hp); // 출력
float f = 3.14f;
double d = 3.14;
char c = 'D';
string str = "Hello World";
바구니 크기가 다른 경우
int a = 1000;
short b = (short) a; // 명시적 형 변환
// 데이터가 날라갈 수 있음
/*------------------------------------*/
short b = 100;
int a = b;
바구니 크기는 같긴 한데, 부호가 다를 경우
byte c = 255;
sbyte sb = (sbyte) c;
// 서로 인식하는 숫자가 다름
// overflow or underflow
소수
float f = 3.1414f;
double d = f;
// 최대 인접한 값으로 변환되므로 완전히 정확한 숫자가 들어가지 않음
int hp = 100;
int level = 50;
// + - / %
hp = 2 * 100 + 1;
hp += 1;
// 반환 후 ++/--
hp++;
hp--;
// 반환 전 ++/--
++hp;
--hp;
// < <= > >= == !=
bool isAlive = hp > 0;
bool isHighLevel = level >= 40;
// && AND || OR ! NOT
bool a = isAlive && isHighLevel;
bool b = isAlive || isHighLevel;
bool c = !isAlive;
int num = 1;
// << >> &(and) |(or) ^(xor) ~(not)
num = num << 3; // 왼쪽으로 3칸 밀기
// 음수일 때 부호비트를 밀게 되면 밀린 후에 다시 부호비트를 원상태로 복귀 (부호 유지)
>> : id 만들 때 32 bit를 한번에 쓰지 않고 4 / 4 / 4 / 4 나눠서 다른 값을 넣을 때 shift 연산으로 쉽게 구현 가능
^ : xor 두 번하면 다시 원상 복귀 → id를 암호화하고 싶을 때 이용
int id = 123;
int key = 401;
int a = id ^ key;
int b = a ^ key; // b = id