본문 바로가기
IT/c#

c++, java 를 아는 사람을 위한 c# ( 내 기준 -ㅅ- ) - 1

by 가능성1g 2024. 12. 29.
반응형

참고 책 : 시작하세요! C#10 프로그래밍!

 

C# 도 java 같이, 중간언어로 컴파일을 했다가 jvm 같은 dotnet runtime 이 실행을 해주는 구조 이다. 

C# 소스 -> 빌드 -> CLR 로더가 중간언어(IL Code)를 실행 이게 exe 파일로 묶여 있음 

 

CLR : Common Language Runtime (가상머신 역할 == java 의 jvm )

IL : Intermediate Language ( 보통 아래의 CIL 을 줄여서 IL 코드로 부른다. )

CIL : Common Intermediate Language 공통 중간언어 ( java 의 바이트코드 - 언밀히 말하면 같지는 않은듯! )

CTS : Common Type System (공통 타입시스템 : 닷넷 호환언어가 지켜야하는 타입 의 표준 )

 

* 닷넷 역사

(구)닷넷 프레임워크 4.8이 마지막 버전 임 

이후, 닷넷코어가 두둥등장! 3.0 까지 나옴

2020년 11월10일 위 2개를 하나로 묶으면서 .NET 5 가 나옴

2021 .NET 6 (C# 10 )

2022 .NET 7 (C# 11 )  <-- 이거 기준으로 공부 예정!

2023 .NET 8 (C# 12 )

 

숫자 타입 중, decimal을 쓸 수 있다. (16바이트 , float: 4바이트, double: 8바이트 )

 

@문자열로 이스케이프 문자열을 일반문자열로 포함이 가능하다. 

ex)

string text = @"\tHello\nWorld";

 

배열선언

int [] products = new int[5] {1,2,3,4,5};

int [] products = new int[] {1,2,3,4,5}; //갯수 생략 가능

다차원 배열

int [,] arr = new int[10,5];

short [,,] arr = new short[8,3,10];

int [][] arr = new int[5][]; //가변 배열 선언

 

foreach 문 가능

int [] arr  = new int[] {1,2,3,4,5};
foreach (int elem in arr )
{
	Console.WriteLine(elem)
}

 

 

문법정리를 위한 연습문제 1

10보다 작은 자연수 중에서 3 또는 5의 배수는 3,5,6,9 이고, 이것을 모두 더하면 23 입니다. 1000보다 작은 자연수 중에서 3또는 5의 배수를 모두 더하면 얼마 일까요?

233168

 int sum = 0;
  3
  4 for(int i=1;i<1000;i++)
  5 {
  6     if(i%3 == 0 || i%5 == 0 )
  7     {
  8         sum += i;
  9     }
 10 }
 11
 12 Console.WriteLine(sum);

 

반응형