반응형
C# 문자열과 정수 input 제대로 다루는 방법
사용자 입력, 문자열 처리부터 숫자 변환까지 완전 정복!
01. C#에서 입력받는 기본 문법 구조 알아보기
"콘솔 프로그램에서 사용자 입력을 받으려면 Console.ReadLine()을 사용합니다."
Console.Write("이름을 입력하세요: ");
string name = Console.ReadLine();
이렇게 입력받은 값은 무조건 문자열(string) 형태로 저장됩니다.
숫자를 입력해도 문자열로 받아들이기 때문에
정수나 실수로 변환하는 작업이 필요합니다.
02. 문자열을 정수로 바꾸는 3가지 방법 비교
방식 메서드 특징
변환 실패 시 오류 | int.Parse() | 실패 시 예외 발생 |
안전한 변환 | int.TryParse() | 실패해도 예외 없음 |
강제 형변환 | (int)Convert.ToDouble() | 실수→정수 변환 가능 |
예시 코드:
int age = int.Parse(Console.ReadLine()); // 위험
int.TryParse(Console.ReadLine(), out int safeAge); // 안전
"TryParse를 쓰면 입력 오류에도 프로그램이 멈추지 않아서 실무에 적합합니다."
03. 실습 예제: 이름과 나이를 입력받아 인사 메시지 출력하기
Console.Write("이름을 입력하세요: ");
string name = Console.ReadLine();
Console.Write("나이를 입력하세요: ");
int.TryParse(Console.ReadLine(), out int age);
Console.WriteLine($"안녕하세요, {age}살의 {name}님!");
- TryParse()는 변환 실패 시 0으로 초기화되므로 디폴트 처리하기 좋습니다.
- 중괄호 안에 변수명을 넣는 $"{}" 문법은 **문자열 보간(String Interpolation)**입니다.
04. 숫자 입력 시 발생하는 오류 상황과 예외 처리 팁
- 사용자가 "열두" 같은 문자를 입력할 경우
int.Parse()는 예외(Exception)를 발생시킵니다.
이럴 땐 아래처럼 처리합니다:
Console.Write("숫자를 입력하세요: ");
string input = Console.ReadLine();
if (int.TryParse(input, out int number))
{
Console.WriteLine($"입력한 숫자: {number}");
}
else
{
Console.WriteLine("정확한 숫자를 입력해주세요!");
}
"예외 처리 없이도 자연스럽게 흐름 제어가 가능하다는 점이 TryParse의 가장 큰 장점입니다."
05. 여러 개의 숫자를 한 줄에 입력받는 방법
입력 예시: 10 20 30
Console.Write("숫자 3개를 띄어쓰기로 입력하세요: ");
string[] inputs = Console.ReadLine().Split(' ');
int[] numbers = Array.ConvertAll(inputs, int.Parse);
- Split() 메서드로 문자열을 나누고
- Array.ConvertAll()로 한 번에 정수 배열로 변환할 수 있습니다.
"빠르게 많은 숫자를 입력받을 때 유용한 방식입니다."
06. 입력값 검증 로직 추가로 사용자 실수 막기
- 입력값이 비어있거나 너무 짧은 경우를 체크하려면?
Console.Write("사용자 ID 입력: ");
string userId = Console.ReadLine();
if (string.IsNullOrWhiteSpace(userId) || userId.Length < 4)
{
Console.WriteLine("아이디는 최소 4자 이상 입력해야 합니다.");
}
"기초적인 검증만 잘해도 프로그램 안정성이 크게 높아집니다."
07. 콘솔 앱에서 반복 입력받는 루프 구조 만들기
while (true)
{
Console.Write("숫자를 입력하세요 (종료하려면 q): ");
string input = Console.ReadLine();
if (input == "q") break;
if (int.TryParse(input, out int number))
{
Console.WriteLine($"입력된 값: {number}");
}
else
{
Console.WriteLine("유효한 숫자가 아닙니다.");
}
}
"이렇게 하면 사용자와 상호작용하는 기본적인 CLI 프로그램을 쉽게 만들 수 있습니다."
#C샵입력처리 #문자열입력 #정수변환 #콘솔앱 #TryParse활용 #C샵기초문법
C샵입력처리, 문자열입력, 정수변환, 콘솔앱, TryParse활용, C샵기초문법
반응형
'IT' 카테고리의 다른 글
상대방 위치, 구글지도로 실시간 확인하는 쉬운 방법 (0) | 2025.05.04 |
---|---|
초보자를 위한 C# IF ELSE 조건문 완전 정복 가이드 (0) | 2025.05.03 |
C# while 반복문 완전 정복! 기본 개념부터 실전 예제까지 (0) | 2025.04.30 |
C# Windows Forms 앱 만들기 첫걸음 (0) | 2025.04.29 |
크롬 시크릿모드 제대로 사용하는 꿀팁 (0) | 2025.04.29 |