Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- USDT
- #csharp #문자열 #문자 #string #char #문자열보간 #문자열연결 #문자열비교 #형식지정자 #문자변환 #csharp세미나
- #csharp #배열 #다차원배열 #가변배열 #배열초기화 #indexrange #span #배열비교 #csharp기초 #배열세미나
- #csharp #산술오버플로우 #checked #unchecked #overflowexception #정수연산 #오버플로우처리 #csharp세미나 #디버깅 #성능최적화
- #csharp #수치변환 #형식변환 #자동변환 #명시변환 #convert #parse #tryparse #csharp세미나
- 빛썸
- #csharp #스택과힙 #메모리구조 #값형식 #참조형식 #박싱 #가비지컬렉션 #힙메모리 #메서드스택 #csharp세미나
- #csharp #산술연산자 #arithmeticoperators #기초프로그래밍 #csharp기초 #연산자우선순위 #정수연산 #실수연산 #math클래스 #나눗셈예외 #csharp세미나 #닷넷개발 #프로그래밍입문
- 빗썸api
- c#
- 테더
- #csharp #연산자우선순위 #결합성 #operatorprecedence #연산자결합 #오른쪽결합 #왼쪽결합 #csharp세미나
- #csharp #기본값 #definiteassignment #default키워드 #초기화규칙 #구조체초기화 #null값 #csharp세미나
- #csharp #수치형식 #numerictypes #리터럴 #형식추론 #접미사 #decimal #float #double #프로그래미링기조 #그래피포뷰
- 무노동수입
- #csharp #조건연산자 #삼항연산자 #논리연산자 #단락평가 #ifelse축약 #조건문 #프로그래밍기초 #csharp세미나
- #csharp #널연산자 #nulloperator #널조건부연산자 #널접합연산자 #nullcheck #csharp세미나 #nullsafe #코드안정성
- #csharp #표현식 #배정표현식 #void표현식 #연산자 #산술연산자 #조건연산자 #표현식기초 #csharp세미나
- #csharp #double #decimal #실수형 #정밀도 #부동소수점 #고정소수점 #금융계산 #과학계산 #csharp세미나 #닷넷기초
- #csharp #관계연산자 #상등연산자 #equals #비교연산 #null비교 #float비교 #csharp기초 #csharp세미나 #문자열비교
- #csharp #부동소수점 #반올림오차 #실수계산 #float #double #decimal #mathround #정확도비교 #csharp세미나
- #csharp #bool #boolean #논리연산자 #부울연산자 #단락평가 #조건문 #csharp기초 #삼항연산자 #csharp세미나
- 파이썬
- #csharp #var키워드 #타입추론 #암묵적형식지정 #익명형식 #linq #지역변수 #csharp세미나
- #csharp #부동소수점 #nan #infinity #특수값 #ieee754 #수치계산 #double #float #decimal #csharp세미나
- c#string
- #csharp #매개변수 #ref #out #params #명명된인수 #선택적매개변수 #메서드전달 #csharp세미나
- c#bool
- #csharp #비트연산자 #bitwiseoperators #flagsenum #masking #시프트연산 #비트연산 #성능최적화 #csharp세미나 #하드웨어제어
- 자동매매
Archives
- Today
- Total
맛있는 개발노트 (맛과 개발을 함께)
C# 세미나 자료: 리터럴, 구두점, 연산자 본문
1. 개요
C# 프로그래밍을 작성할 때 자주 접하게 되는 요소 중 "리터럴", "구두점", "연산자"는 프로그램의 의미와 동작을 정의하는 핵심 요소입니다. 본 세미나에서는 이 세 가지 주제를 초급, 중급, 고급 단계로 나누어 이론과 예시를 중심으로 설명합니다.
2. 기본 이론
2.1 리터럴 (Literal)
- 정의: 코드 내에 직접 작성된 고정된 값
- 종류:
- 정수형 리터럴: 10, 0b1010, 0xFF
- 실수형 리터럴: 3.14, 1.0e-2, 2.5f
- 문자형 리터럴: 'A', '\n'
- 문자열 리터럴: "Hello", @"C:\\Path"
- 불리언 리터럴: true, false
- null 리터럴: null
2.2 구두점 (Punctuation)
- 정의: 코드 구조를 정의하기 위해 사용하는 기호들
- 예시: ;, ,, ., (), {}, []
- 용도:
- 문장 끝 구분 (;)
- 매개변수 구분 (`,")
- 멤버 접근 (.)
- 블록 정의 ({}), 배열/인덱스 ([]), 호출 (())
2.3 연산자 (Operator)
- 정의: 하나 이상의 피연산자에 대해 연산을 수행하는 기호
- 종류:
- 산술 연산자: +, -, *, /, %
- 비교 연산자: ==, !=, <, >, <=, >=
- 논리 연산자: &&, ||, !
- 대입 연산자: =, +=, -=, *= 등
- 기타 연산자: ??, ?., =>, is, as, sizeof, typeof, checked, unchecked
3. 단계별 설명
3.1 초급
이론 요약
- 리터럴은 실제 값
- 구두점은 코드 구조 형식 표현
- 연산자는 계산 또는 비교 수행
예시 코드
int age = 25; // 정수 리터럴, 대입 연산자
string name = "홍길동"; // 문자열 리터럴
bool isActive = true; // 불리언 리터럴
Console.WriteLine(name); // 구두점: . () ;
주의사항
- 세미콜론(;) 누락 시 컴파일 오류
- 문자열 안에서 특수문자는 이스케이프 문자(\n, \") 필요
3.2 중급
이론 심화
- 다양한 리터럴 형식과 이진/16진수 리터럴 활용
- 연산자 우선순위 이해
- null 병합 연산자(??), null 조건 연산자(?.) 사용
예시 코드
int hex = 0xFF; // 16진수 리터럴
int bin = 0b1010; // 2진수 리터럴
string path = @"C:\\Docs\\file.txt"; // @ 문자열 리터럴
Person p = null;
string name = p?.Name ?? "이름 없음"; // null 조건 및 병합 연산자
팁
- @"..." 형식은 경로 문자열 작성에 유용
- ?., ??는 null 체크 로직을 간단하게 만들어 줌
3.3 고급
고급 활용 및 사례
- 람다 식(=>)과 표현식 본문 메서드
- 연산자 오버로딩
- checked와 unchecked를 통한 오버플로 제어
- sizeof, typeof 연산자 활용
예시 코드
// 표현식 본문 메서드
int Square(int x) => x * x;
// 연산자 오버로딩
class Point
{
public int X, Y;
public static Point operator +(Point a, Point b)
{
return new Point { X = a.X + b.X, Y = a.Y + b.Y };
}
}
// checked 연산자
int big = int.MaxValue;
int result = checked(big + 1); // 예외 발생
실무 팁
- 성능 이슈가 있을 경우 checked 사용으로 안정성 강화 가능
- 연산자 오버로딩은 직관적 사용 가능하지만 오용 주의
4. 결론
- 리터럴은 데이터를 표현하는 기본 단위
- 구두점은 코드의 문법 구조를 결정
- 연산자는 데이터 간 관계 및 동작을 정의
- 기초 문법에 익숙해질수록 안정적이고 가독성 높은 코드 작성 가능
5. Q&A
- Q: @"..." 문자열은 어떤 상황에 쓰나요? A: 경로 문자열이나 이스케이프가 많은 문자열에서 편리하게 사용됩니다.
- Q: ?., ?? 연산자는 어떤 차이가 있나요? A: ?.는 객체가 null이 아니면 속성 접근, ??는 null일 경우 대체값 제공입니다.
감사합니다!
'C# 학습 > C# 언어의 기초' 카테고리의 다른 글
C# 세미나 자료: 값 형식과 참조 형식 (0) | 2025.04.07 |
---|---|
C# 세미나 자료: 생성자와 인스턴스화 (0) | 2025.04.07 |
C# 세미나 자료: 형식의 기초 (Basics of Types) (0) | 2025.04.07 |
C# 세미나 자료: 주석 (Comments) (0) | 2025.04.07 |
C# 세미나 자료: 식별자와 키워드 (0) | 2025.04.07 |