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 |
Tags
- 장애물달리기
- 코루틴
- 효과음
- inputsystem
- BGM
- 프로그래머스
- 직렬화
- invokec#events
- 스택
- 배열
- 유한상태머신
- c#
- soundmanager
- 유니티
- ObjectPool
- script
- UI
- FSM
- Generic
- 스파르타내일배움캠프
- skybox
- InputManager
- delegate
- 메서드
- LINQ
- unity
- 비선형자료구조
- 람다식
- 자료구조
- 인터페이스
Archives
- Today
- Total
Unity 개발일지
[C#] 무한루프를 이용해 잘못된 입력을 받았을 때 메세지 띄우기 본문
오늘은 스파르타 2주차 TextRpg를 구현 중 알게된 코드에 대해 리뷰하고자 한다.
위와 같은 상황에서 키를 입력받을 때 잘못된 입력을 받았을 때
"잘못된 입력입니다." 에서 끝나지 않고 제대로 된 입력값이 나올때 까지 재입력을 받는 코드를 구현해보자.
먼저 위의 콘솔창을 띄우는 코드를 다음과 같이 입력한다.
그리고 입력을 받기 위해 int input을 선언하고, 유효한 입력을 했는지 확인하기 위한 함수를 선언한다.
이제 선언된 함수를 작성해보자.
Console.ReadLine()으로 input을 받은 뒤
int.TryParse(String, Int32) 메서드로 지역변수 ret 을 받는다.(외부에서 선언하지 않고 함수 내부에서 생성이되었음)
성공적으로 변환되면 true, 실패하면 false를 반환한다.
성공적으로 변환되었으면 if문이 실행되어 ret값이 mix과 max의 사이값이면 입력한 값을 실행 후 while문을 벗어날 것이고
변횐에 실패되면 잘못된 입력이라고 출력되고 while문을 벗어나지 못하므로 제대로 된 값을 입력할 때까지 무한루프 한다.
[추가]
이런 식으로 작성해도 된다.
반응형
'C#' 카테고리의 다른 글
[C#] 정적배열(Array)과 동적배열(Dynamic Array) (0) | 2024.04.29 |
---|---|
[C#] 정적(Static) 필드와 메서드 (2) | 2024.04.26 |
[C#] 인터페이스(Interface)와 추상(Abstract)클래스 (0) | 2024.04.24 |
[C#] 프로퍼티(Property)란? (0) | 2024.04.23 |
[C#] 백준 문제 2588번 곱셈 (0) | 2024.04.22 |