SSISO Community

갤러리정

C#기초 - 기본입출력 - CSharp

★ 일반 명령프롬프트에서 닷넷을 컴파일하기 위한 준비
1. 내컴퓨터 -> 등록정보 -> 고급 -> 환경변수 -> 시스템변수 -> Path -> ;%SystemRoot%\Microsoft.NET\Framework\v1.1.4322
2. 명령 프롬프트에서 C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin\vcvars32.bat 실행
3. 컴파일 관련 도움말 -> 명령프롬프트에서 csc/?

 

클래스(Class) => 객체
- C# 어플리케이션은 클래스들의 조합
- 클래스 -> 데이터 + 메소드 등
- C#에서 모든 코드들은 클래스안에 존재

 

메소드(Method)
- 객체에서의 기능(Function)
- Main 메소드 : C#어플리케이션의 진입점(시작메소드). Main메소드가 종료되면 어플리케이션도 종료. 반드시 public, static이어야 한다. 한 어플리케이션내에 여러개의 Main 정의 가능

 

네임 스페이스(Namespace)
- 파일들의 체케ㅤㅈㅕㄱ으로 분류하기 위한 폴더 개념과 유사
- 수많은 클래스를 분류. 그룹지어 놓은것

 

using문
- 네임스페이스의 사용 불편함을 해소(네임스페이스를 줄이는 방법)
- using 문은 첫번째 클래스가 정의되기 이전에 정의해야 한다.

 

명명법
- 헝가리언 표기 : 변수의 데이터 타입 반영. 타입을 접두어로 붙인다. ex)인터페이스명(ITest)
- 파스칼 표기 : 각 단어의 첫번째 문자를 대문자로 한다. ex)네임스페이스명. 클래스명, 메소드명 등
- 카멜 표기 : 첫단어를 제외한 각 단어의 첫번째 문자를 대문자로 한다. ex)클래스멤버명(변수)

 

---------------------------------------------------------------------------------

 

● 기본 입/출력 구조

 

Console 클래스
- Standard input/Output/Error : 스트림처리
- Standard Input : 키보드
- Statdard Output : 모니터
- Standard Error : 모니터

 

출력 메소드
- 콘솔에 데이터 및 연산 결과 출력
- Console.Write
- Console.WriteLine
- 문자열을 양식에 맞추어 출력가능 : 양식 문자열 {위치지시번호, 전체길이}


     Console.WriteLine("양식테스트: >{0,10}<", "ABCDEFG"); ->결과 :  >   ABCDEFG<
     Console.WriteLine("양식테스트: >{0, -10}<", "ABCDEFG"); ->결과 :  >ABCDEFG   <

 

- 숫자형 양식 지정 : C(화폐), D(십진수), E(지수), F(고정소수점),
 G(가장 간단하게 표현할수 있는 정수형태), N(양식숫자, 세자리마다 콤마(,)표시), X(16진수)..

 

  //화폐형
  Console.WriteLine("화폐형 표시 {0:C} {0:C4}", 123.45); 
   결과 -> 화폐형 표시 \123 \123.4500 
   
  //길이를 같이 표시
  Console.WriteLine("화페형 표시 {0:C} >{0,20:C}<", 123.45);
   결과 -> 화폐형 표시 \123 >               \123< 
  Console.WriteLine("화폐형 표시 {0:C} >{0, -20:C}<", 123,45);
   결과 -> 화폐형 표시 \123 >\123        <

 

  //기타양식
  Console.WriteLine("정수 : {0:D}", 123456);
      //결과 -> 정수 : 123456
  Console.WriteLine("지수 : {0:E}", 123456789);
     // 결과 -> 지수 : 1.2345678E+008
  Console.WriteLine("고정소수점 : {0:F2}", 123456789);
      //결과 -> 고정소수점 : 123456789.00
  Console.WriteLine("가장 간단하게 표현할수 있는 정수형태 : {0:G3}", 12345567889);
     // 결과 -> 가장 간단하게 표현할수 있는 정수형태 :  1.23E+10
  Console.WriteLine("양식숫자 : {0:N}", 123456789);
     // 결과 -> 양식숫자 : 123,456,789.00
  Console.WriteLine("16진수 : {0:X4}", 9999);
     // 결과 -> 16진수 : 2780F

 

- \," 등의 기호문자를 출력하고자 할때는 기호문자 하나하나 앞에 \를 붙여준다.


     Console.WriteLine("특수문자테스트 : \"");   //-> 특수문자테스트 : "
     Console.WriteLine("특수문자테스트 : \\");  //-> 특수문자테스트 : \

 

- 폴더경로를 출력하고자 할경우 "\"기호가 많으면 출력값 앞에 "@"를 붙여준다. "@"는 위의 \,"와 혼용하여 사용할수 없다.


    Console.WriteLine("특수문자테스트 : {0}", @"c:\Test\Test.cs");

     //-> 특수문자테스트 :   c:\Test\Test.cs

 

입력메소드
- 콘솔에서 키보드로부터 필요한 정보입력
- Console.Read : 한문자씩 입력(문자코드값 리턴) -> 기본값은 int형, 입력한 글자의 char값을 가지고 온다.


  입력값 A -> 결과 : 65,  입력값이 엔터키라면 결과 : 13

 

  문자로 입력받고자 한다면 char Check = (char) Console.Read();
  입력받은 글자중 첫번재 한글자만 가져온다.

  한문자 이상 입력받았을경우 나머지 글자는 스트림리더에 그대로 저장되어있다.
  만약 아래 내용중에서 처음에 "가나다"라는 글자를 입력했다면.

 

   char input;
   input = (char) Console.Read();
   Console.WriteLine("입력받은 값은 : {0}", input);

 

   input = (char) Console.Read();
   Console.WriteLine("입력받은 값은 : {0}", input);

 

   input = (char) Console.Read();
   Console.WriteLine("입력받은 값은 : {0}", input);

 

   input = (char) Console.Read();
   Console.WriteLine("입력받은 값은 : {0}", input);

 

  두번째부터 네번재까지의 Read는 첫번째에서 읽었던 값을 스트림에서 순서대로 가져온다.

 

   입력받은 값은 : 가
   입력받은 값은 : 나
   입력받은 값은 : 다
   입력받은 값은 : 

  
  ->입력받은값은 세글자인데 네번출력하면 네번째는 공백으로 출력된다.

 

- Console.ReadLine : 한 라인씩 입력(엔터키를 칠때까지) -> 기본값은 string형

 

   string input;
   Console.Write("아무글자나 입력해보세요: ");


   input  = Console.ReadLine();
   Console.WriteLine("입력받은 값은 : {0}", input);

 

ASCII -> 8bit
UniCode -> 16bit

 


1633 view

4.0 stars