본문 바로가기
PROGRAMING📚/C#📑

C#_기본 문법

별찌루 2019. 3. 7.
728x90
반응형

 

 

//연산자//

 

단항 연산자 : 1개의 항을 대상으로 연산을 수행하는 것

(예) +, - .! . ~. ++, -- 등 

* ! 은 bool형에만 사용함 -> C#에는 true, false 가 제공 된다. 

 (예)!true -> false , !false -> true 

 

산술 연산자  : 계산을 위한 연산자 

(예) *, /, %, -, +

* string에서 +는 문자열 연결로 사용된다.

 (예)정수/부동 소수 + "문자열" = "문자열"

 

시프트(shift) 연산자와 관계 연산자 

(예) <<, >> , >=, <= , > , <, ==, !=

관계 연산자의 결과는 0일 경우에는 false

1일 경우에는 true 를 출력한다.

 * C/ C++에서는 0과 1로 출력함

 

is 연산자 

형식 호환을 조사하는 연산자 -> 캐스팅의 성공유무 만 확인 할 수 있는 연산자 

 (형식) '변수' is '클래스형 or 데이터형 '

-> A is B  (결과)true or false

* 박싱/ 언박싱 변환, 참조 변환에서 사용한다.

 

as 연산자

캐스팅에 성공하면 캐스트 결과를 리턴하고 캐스팅에 실패하면 null을 리턴

<역할>

- 형변환과 변환을 조사 

- 캐스트 연산자의 역할과 변환되지 않았을 경우 null을 리턴한다. 

-> 참조, 박싱, 언박싱, null형에 사용한다. 

<형식>

결과형 = 참조형, 언박싱, 박싱 as 변환형

 

비트 연산자와 논리 연산자 

비트 연산자 : 비트 단위로 논리 연산을 수행하는 연산자 , 비트 이동 연산을 수행하는 연산자

(예) &(비트단위 AND), |(비트단위 OR)

^(비트단위 XOR) -> 두 연산수의 값이 다를 때만 1 , ~(비트단위 NOT)

<<(왼쪽으로 1비트 이동), >>(오른쪽으로 1비트 이동)

 

논리 연산자 : 참, 거짓을 판별하는 연산을 논리 연산자라고 한다. 

(예) &&(논리곱(AND)), ||(논리합(OR)) , !(부정(NOT))

 

null 병합 연산자 : ?? ( null 조사)

<형식>

C  = A ?? B

-> A가 null 이면 B를 C에 대입하고 

   A가 null이 아니면 A를 C에 대입한다. 

 

//제어문//

 

<선택문>

> if ~ else

* C#에서는 0과 1을 사용 불가능하다. true, false를 사용해서 만든다.

    > switch, case

- 정수, 문자 상수, 문자열 (*string 사용이 가능하다)

- 모든 case 와 default에는 break가 반드시 있어야한다. 

 

* if 문을 사용할 경우에는, nNum 자체를 넣을수 없어서 오류가 발생 하고,

switch문의 경우에는, break를 작성해 주지 않으면 오류가 발생한다.

 

 

 

//반복문//

 

> for

for(;;) ->무한 반복

 

> while, do~while

while(true) ->무한 반복(* 1 사용 불가능)

 

> foreach

처음 부터 끝까지 순차적으로 값을 반복하여 읽는 역할을 한다.-> 읽기 전용

<형태>

foreach(데이터형 변수 in 배열명(컬렉션명))

{

.......

}

 

 

//점프문//

특정 부분에서 건너 뛰어서 실행하는 제어 구문을 점프문이라고 한다. 

goto, continue, return, break -> " C/C++과 유사 "

> goto

: 조건에 상관없이 원하는 구간으로 이동시킨다.

> continue

: 반복문에서 continue구간을 만날 때, 건너 뛰어서 반복을 수행한다.

> return

: 메서드의 결과를 메서드를 호출한 시점으로 돌려준다. 즉, 값을 반환 시켜서 돌려준다.

> break

: swtich문이나 반복문을 중지시켜 루프를 빠져나오게 하는 역할

 

 

//예외 처리문//

런타임 시에 발생할 수 있는 오류를 처리하는 방법

<방법>

> if~ else 문

> try ~catch 문 

<형태>

try

{

//예외가 발생할 수 있는 코드 

}catch(예외 처리 객체 e)

{

//예외 처리

}

 

-> System.Exception 파생 객체만 사용한다.

*다중 예외 처리를 하고 싶은 때는, catch구문을 여러개 사용하면된다.

 

* try 문 안에서 초기화한 변수를 try문 밖에서 사용 할 수 없다.

->try구문 밖에서 초기화를 해주어야 한다.(오류 발생)

> try ~ finally

finally _예외 발생과 상관없이 항상 실행되는 구문

 

(예)예외가 발생하여도 실행된다. 예외가 발생하지 않아도 실행된다.

 

> throw 

: 예외 상황을 임의로 발생 시키는 역할을 한다.

->System.Exception 에서 파생된 객체만 사용한다.

try문과 그 외에서도 사용 가능하다

 

<형식>

throw new 'System.Exception 객체'();

 

 

 

 

 

 

정리:

 

- 대부분의 연산자는 C,C++ 언어와 유사 

- C#에서 새롭게 등장하는 연산자 

- for, while, do~ while, foreach

- 예외 처리문

 

 

 

 

 

 

 

 

 

728x90
반응형

댓글