article thumbnail image
Published 2022. 9. 27. 14:55

 

C# 기본구조

 

자바스크립트의 데이터 타입은 크게 자료형과 참조형으로 나눠져있다.

이처럼 C#에도 데이터 타입이 존재하는데, 

C#을 포함한 모든 .NET 프로그래밍 언어는 .NET의 Common Type System에 정의된 .NET 데이터 타입을 사용한다.

무슨말이냐면, 

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            int num = 0;
            long bigNum = 500000000000L;
            short shortNum = 200;
            byte byteNum = 40;
            bool logic = true;
            char chr = '나';
            string myName = "seo";
            float num2 = 35.1F;
            double num3 = 35.235D;
            Console.WriteLine(num3);
        }
    }
}

 

맨 윗줄에 using System이라는 키워드가 보일 것이다.

이 system은 '네임스페이스'이다. 

 

 

네임스페이스?

 

뭔데요? 😥

 

 

네임스페이스데이터들이 어떤 층위에 속해 있는지를 이름을 지어 구분하는것으로

여러 클래스가 모여 하나의 네임스페이스를 이루는것을 말한다.

(네임스페이스 안에 또 네임스페이스가 존재할수도 있음!)

 

필요한 상황을 구체적으로 이해해보자.

만약 다른사람과 같이 협업을 하고 결과물을 합칠때 클래스 안에서 변수,함수 이름이 겹치면 큰 문제가 된다.

이때 네임스페이스를 이용하면 이름이 같은 데이터(변수,함수)라도 층위에 따라 다른 의미를 가지게 해주기 때문에

구분짓기에 아주 용이하다는 점👍

 

주의해야할 점은

네임스페이스 안에있는 class를 쓰기 위해서는 반드시

usnig 키워드를 통해 명시해주어야한다.

 

맨위에 생성한

using System..using System.Collections.Generic...몇줄이 기본으로 추가되어있는데 

이게 바로 그 네임스페이스를 참조하겠다는 뜻이다.

이 줄 덕분에 우린 기본적으로 만들어진

클래스(System.Console,System.Collections 등등) 를 사용할 수 있었다는 사실!📍

 

 

 C#의 데이터 타입에 대해서도 알아보자.

데이터타입에대해서는 자바스크립트와 큰 차이점은 없다. 

단지 앞에 데이터타입을 꼭 '명시' 해줘야한다는 점. 

 

정수형

 int -2,147,483,648이상 ~ 2,147,438,647이하만 저장 가능하며

은행관련업무 또는 돈관련 업무시 범위를 초과할 수 있으며,

초과시 랜덤한 값이 들어가거나 오류가난다.

long -9,223,372,036,854,775,808이상 ~ +9,223,372,036,854,775,807이하만 저장 가능.

short -32,768~32,767

byte 0~255

 

논리형

bool true,false라는 참 거짓의 상태를 저장

 

문자형

char 1개의 문자를 저장.

 

문자열형

string 여러 문자를 저장.

 

실수형

float,double 소수점이있는 실수를 저장 할 수 있다.

 

 

마지막으로 C#에서는 console.log("num"); 를 사용하지않고

Console.WriteLine("num"); 를 사용해서 데이터를 호출한다.

System 네임스페이스의 Console클래스의 WriteLine메서드를 호출한다는 뜻이다.

 

'개발이야기 > C#' 카테고리의 다른 글

[C#] 반복문  (0) 2022.09.27
[C#] 배열  (0) 2022.09.27
복사했습니다!