C#의 시작
C# 소개
현재 나는 파이썬을 주로 다루고, C++을 아주 조금 찍먹 중이다.
하지만, 여러가지 이유로 언리얼이 아닌 유니티 과정을 듣게 되었고, 유니티에 사용되는 C#을 학습 할 필요가 생겼다.
내가 교육 받으며, 기존 사용하던 언어들과 다른 부분을 정리해 보려 한다.
C# 언어의 특징
- 객체 지향 프로그래밍 언어.
- 가비지 컬렉션과 강력한 형식 시스템 기능 제공
- 가비지 컬렉션
- 동적 할당된 메모리를 자동으로 회수해주는 기능.
- 개발자가 메모리를 직접 할당하거나 해제하는 대신, .NET 프레임워크에서 가비지 수집기가 자동으로 메모리를 해제해준다.
- 강력한 형식 시스템
- 변수나 객체의 자료형이 미리 정의되어 있어, 데이터 타입에 대한 안전성과 정확성을 보장하는 시스템
- 가비지 컬렉션
- C, C++ 등 다른 언어들과 문법 및 구조적으로 유사
.NET 프레임워크
.NET 프레임워크는 Microsoft에서 개발한 프로그래밍 플랫폼으로, 다양한 프로그래밍 언어를 지원하고, 손쉽게 애플리케이션을 개발할 수 있도록 도와준다.
프로그램을 빌드하고 실행하는 방법
빌드하기
- 메뉴에서 Build > Build Solution
- 단축키
Ctrl + Shift + B - 빌드가 성공적으로 완료되면 빌드 메세지를 확인 할 수 있다.

실행하기
-
메뉴에서 Debug > Start without Debug
-
단축키
Ctrl + F5 -
윈도우 애플리케이션인 경우, 애플리케이션 창이 열리고 프로그램 실행.
-
콘솔 애플리케이션인 경우, 콘솔 창이 열리고 프로그램이 실행

출력
Consol.WriteLine
-
C#에서 콘솔 출력을 할 때 사용된다.
-
인수로 전달된 값을 출력하고 줄바꿈 문자열을 추가한다.
Consol.WriteLine(value);
Consol.Write
-
위와 같은 콘솔에 출력을 할 때 사용된다.
-
인수로 전달 된 값을 출력하는것 까진 같지만, 줄바꿈 문자열을 추가하지 않는다.
Consol.Write(value);
입력
Consol.ReadLine()
-
콘솔에서 입력 받기 위해 사용한다.
-
사용자가 입력한 값은 문자열로 반환한다.
string input = Console.ReadLine();
다중 입력
Console.Write("Enter two numbers: ");
string input = Console.ReadLine(); // "1 2"과 같은 문자열을 입력받음
string[] numbers = input.Split(' '); // 문자열을 공백으로 구분하여 배열로 만듦
int num1 = int.Parse(numbers[0]); // 첫 번째 값을 정수로 변환하여 저장
int num2 = int.Parse(numbers[1]); // 두 번째 값을 정수로 변환하여 저장
int sum = num1 + num2; // 두 수를 더하여 결과를 계산
Console.WriteLine("The sum of {0} and {1} is {2}.", num1, num2, sum);
자동 완성
Tab
- 코드를 작성하며 Tab 버튼을 활용하면, 자동 완성을 사용 할 수 있다.
- 여러 자동 완성이 제공될 수 있으며, 그때는 방향 키로 선택 후 Tab을 한다.
Ctrl + Space
- 타이핑 중 잘못된 입력으로 자동 완성이 종료 되었을 때, 다시 자동 완성을 호출한다.
매직 키워드
var 키워드
- C# 3.0부터
var키워드를 사용해 변수를 초기화 할 수 있다. var을 사용해 변수를 선언하면 변수의 자료형이 컴파일러에 의해 자동으로 결정된다.- C++의
auto와 비슷해 보인다. (나중에 한번 정리를 해보겠다.)
댓글남기기