C#/기초 문법

C# 자료형 / 산술 연산 / 논리 연산 / Literal과 suffix

서지현 2024. 11. 22. 09:04

자료형 정리표

⭐bool true , false   false 1 byte
⭐string 문자열 " " 로 감싸야 함 null 계속 변함
char 문자 ' ' 로 감싸야 함 '\0' 2 byte
sbyte 8bit 정수 (부호 없음) -128 ~ 127 0 1 byte
byte 8bit 정수 0 ~ 255 0 1 byte
short 16bit 정수 –32,768 ~ 32,767 0 2 byte
ushort 16bit 정수 (부호 없음) 0 ~ 65,535 0 2 byte
⭐int 정수 –2,147,483,648 ~ 2,147,483,647 0 4 byte
uint 정수 (부호 없음) 0 ~ 4,294,967,295 0 4 byte
long 64bit 정수 –9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 0 8 byte
ulong 64bit 정수 (부호 없음) 0 ~ 18,446,744,073,709,551,615 0 8 byte
⭐float 실수 1.5E-45 ~ 3.4E+38 (7자리 유효) ( 뒤에 f를 붙여야함) 0 4 byte
double 실수 5.0E-324 ~ 1.7E+308 (15자리 유효) 0.000000000000001d 뒤에 d를 붙여야 하지만 붙이지 않더라도 double로 인식 0 8 byte
Decimal 실수 ±1.0 x 10-28 ~ ±7.9228 x 1028 28-29개의 자릿수 0 16 byte
  • 다양한 자료형이 존재하는 이유는, 각각 차지하는 메모리의 크기가 다르기 때문이다.
  • .NET 데이터 타입이 포함된 표도 포함.
bool System.Boolean True or False
byte System.Byte 8비트 unsigned integer
sbyte System.SByte 8비트 signed integer
short System.Int16 16비트 signed integer
int System.Int32 32비트 signed integer
long System.Int64 64비트 signed integer
ushort System.UInt16 16비트 unsigned integer
uint System.UInt32 32비트 unsigned integer
ulong System.UInt64 64비트 unsigned integer
float System.Single 32비트 single precision 부동소수점 숫자
double System.Double 64비트 double precision 부동소수점 숫자
decimal System.Decimal 128비트 Decimal
char System.Char 16비트 유니코드 문자
string System.String 유니코드 문자열
  System.DateTime 날짜와 시간, 별도의 C# 키워드가 없음
object System.Object 모든 타입의 기본 클래스로 모든 유형을 포함할 수 있음

산술 연산

+ 더하기
- 빼기
* 곱하기
/ 나누기
% 나머지
++ 증가
-- 감소

 

논리 연산

> a > b a 가 b보다 크면 true  
>= a >= b a 가 b보다 크거나 같으면 true  
< a < b b 가 a보다 크면 true  
<= a <= b b 가 a보다 크거나 같으면 true  
== ⭐⭐ a == b a 와 b 가 같으면 true =와 헷갈리면 안됨.
!= a != b a 와 b 가 다르면 true  
&& a && b 두가지 조건이 모두 만족하면 true  
|| a || b 둘 중 하나만 만족하면 true  

리터럴 데이터

 

C# 코드에서 123, true, "ABC" 와 같이 값을 직접 써줄 수 있는데 이를 리터럴(Literal)이라고 한다.

특정 데이터 타입(int,decimal등)을 지정하고 싶으면 리터럴 데이터 뒤에 지정 접미어(suffix)를 추가해야한다.


// Bool
bool b = true;

// Numeric
short sh = -32768;   
int i = 2147483647;  
long l = 1234L;      // L suffix
float f = 123.45F;   // F suffix
double d1 = 123.45; 
double d2 = 123.45D; // D suffix
decimal d = 123.45M; // M suffix

// Char/String
char c = 'A';
string s = "Hello";

// DateTime  2011-10-30 12:35
DateTime dt = new DateTime(2011, 10, 30, 12, 35, 0);

 

  • flaot 데이터 타입은 F를 붙여 double이 아닌 float 타입임을 나타낸다.
  • double 타입은 숫자 뒤에 D를 붙이거나, 아무것도 붙이지 않음으로서 double타입임을 나타낸다.
  • decimal 타입은 숫자 뒤에 M을 붙여 diclmal 타입임을 나타낸다.
  • char 타입은 작은 따옴표' 를 사용하여 한 문자를 할당한다.
  • string 타입은 큰 따옴표" 를 사용하여 문자열을 할당한다.

숫자형 데이터 타입의 최대값, 최소값은 이렇게 알아볼 수 있다.

int i = int.MaxValue;
float f = float.MinValue;

NULL

 

어떤 변수가 메모리 상에 어떤 데이터도 가지고 있지 않다는 의미로 NULL을 사용한다.

NULL을 표현하기 위하여 C#에서는 소문자 null 이라는 키워드를 사용한다.

 

모든 데이터 타입이 NULL을 가질 수 있는건 아니다.

데이터 타입은 NULL을 가질 수 있는 타입(Refrence 타입)과 가질 수 없는 타입(Value 타입) 으로 구분될 수 있다.


 

참조사이트

https://learn.microsoft.com/ko-kr/dotnet/csharp/

 

C# 가이드 - .NET 관리 언어

C# 가이드에는 C#을 배우고 .NET 앱 작성을 시작하는 데 필요한 모든 것이 포함되어 있습니다. 프로그래밍 C# 알아보기 - 초보 개발자, C#을 처음 사용하는 개발자, 숙련된 C# / .NET 개발자용입니다.

learn.microsoft.com

https://www.csharpstudy.com/CSharp/CSharp-datatype.aspx

 

C# 데이타 타입 - C# 프로그래밍 배우기 (Learn C# Programming)

C# 데이타 타입 C#을 포함한 모든 .NET 프로그래밍 언어는 .NET의 Common Type System에 정의된 .NET 데이타 타입을 사용한다. C#은 int, double, string 과 같은 C# 키워드로 데이타 타입을 표현할 수 있으며, 또

www.csharpstudy.com

 

'C# > 기초 문법' 카테고리의 다른 글

형변환  (0) 2024.11.25