소소한 개발 공부

[C#] @의 의미 본문

프로그래밍/C#

[C#] @의 의미

이내내 2023. 1. 18. 23:03

C#에서 @은 다양하게 처리된다.

https://learn.microsoft.com/ko-kr/dotnet/csharp/language-reference/tokens/verbatim

 

축자 텍스트 및 문자열 - @

'@'을 사용하는 축자 텍스트를 사용하면 C# 키워드를 식별자로 사용하거나 문자열 리터럴을 축자로 해석하거나 특성 이름을 구분해야 했음을 나타냅니다.

learn.microsoft.com

이스케이프 시퀀스 무시

예를 들어 파일 경로를 작성하고 싶은데, '\'의 경우 이스케이프 시퀀스에 의해 \\으로 작성해야 \으로 인식이 된다.

이때 @를 앞에 붙여주면 \\으로 쓰지 않아도  \으로 인식이 된다.

 

아래의 예시를 보면 path는 일반 문자열로 이스케이프 시퀀스 \\로 \를 출력하는 반면에,

pathat은 앞에 @를 붙이면 \을 하나만 써도 \가 출력된다.

결과적으로 둘은 같은 결과를 내게 되는데, @를 붙인 쪽이 더 가독성이 높아 보인다.

코드
출력

문자열 여러 줄 처리

기존의 문자열이 여러 줄로 늘어나면 하나의 문자열로 인식하지 못하는 반면에,

@을 앞에 붙인 문자열은 개행이 되어도 하나의 문자열로 인식된다.

코드
출력

키워드의 식별자화

@를 사용해 C#의 키워드(this, int, for, ...) 를 식별자로 사용할 수 있다.

예를 들어 다음과 같이 사용할 수 있다.

코드
출력

 

'프로그래밍 > C#' 카테고리의 다른 글

[C#] 진법에 따른 숫자 리터럴  (0) 2023.01.26
[C#] stopwatch 시간 측정  (0) 2023.01.25
[C#] checked / unchecked  (0) 2023.01.17
[C#] 입출력 Console.Write, Console.Read  (0) 2022.12.20
[C#] Switch  (0) 2022.12.20