C#/데이터 갖고 놀기
[C#] 정수 형식, 진수 변환 등
by 과아아앙
2021. 3. 23.
using System;
namespace CSharp
{
class Program
{
//여기에 주석을 달 수 있음
/* 사이에 주석을 달 수 있습니다. 여러 줄 짜리 주석*/
static void Main(string[] args)
{
// 데이터 + 로직
// 체력 0
// 1. 바구니 크기가 다른 경우!
int a = 0xFFFF;
short b = (short)a;
// 2. 바구니 크기는 같긴 한데, 부호가 다를 경우
byte c = 255;
sbyte sb = (sbyte)c;
// underflow, overflow
// 0xFF = 0b11111111 = -1
// 3.소수
float f = 3.1414f;
double d = f;
// 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
// 바이트에 따른 구분이 있는 이유는 메모리 때문!
// 10진수
// 00 01 02 03 04 05 06 07 08 09
// 10
// 2진수
// 0~1
// 0b00 0b01 0b10 0b11 0b100
// 0b10001111 = 0x8F
// 16진수
// 0~9 a b c d e f
// 0x00 0x01 0x02 .. 0x0F
// 0x10
// 2진수와 16진수 사이의 변환은 쉽다. 4자리씩 끊어서 변환하면 된다.
// int hp;
// short level = 100;
// id계열은 long을 사용하는 것이 편함. ex)아이템
// long id;
// hp = 100;
// 문명 간디 공격성 일화
// 평화 수치가 올라가면서 공격수치가 낮아짐.
// 언더플로우 발생, 공격성 최댓값으로 수정.
//byte attack = 0;
//attack--;
//1바이트(참/거짓)
// bool b;
// b = true;
// b = false;
//소수
// 4바이트
// float f = 3.14f;
// 8바이트
// double d =3.14;
// 2바이트
// char c = 'a';
// string str = "Hello World";
// Console.WriteLine(str);
//Console.WriteLine("Hello Number ! {0}", attack);
}
}
}