소소한 개발 공부
[C#] 입출력 Console.Write, Console.Read 본문
C# 입출력에 대해 알아봅니다.
Console.Write()
지정한 값의 텍스트 표현을 표준 출력 스트림에 쓴다.
https://learn.microsoft.com/ko-kr/dotnet/api/system.console.write?view=net-7.0
예외
I/O 오류
format이(가) null인 경우
format의 형식 사양이 잘못됨
public static void Write (string format, object? arg0, object? arg1, object? arg2);
format을 사용하여 쓸 세 번째 개체
* object? 에서 ?는 null 일 수도 있고, object일 수도 있다는 뜻으로
매개변수가 들어갈 수도 있고, 없을 수도 있다는 의미이다.
예시
Console.Write("정수를 입력하세요: ");
Console.WriteLine()
뒤에 현재 줄 종결자가 오는, 지정한 데이터를 표준 출력 스트림에 쓴다.
https://learn.microsoft.com/ko-kr/dotnet/api/system.console.writeline?view=net-7.0
public static void WriteLine (string format, object? arg0, object? arg1);
예외
I/O 오류
format이(가) null인 경우
format의 형식 사양이 잘못됨
예시
int sum = 0;
Console.WriteLine("모든 정수의 합: {0}", sum);
Console.WriteLine("평균 값: {0:F3}", mean); // F 뒤에 숫자로 precision 조절 가능
// 혹은
Console.WriteLine($"평균 값: {mean:F3}");
위의 코드와 같이 3.141592가 있다면 F3 으로 출력 형식이 지정되어 있을 때, 3.142 (5로 반올림) 까지 출력되게 된다.
F2의 경우 3.14까지 출력된다.
Console.Read()
입력: 표준 입력 스트림에서 입력을 받는다.
반환: Int32를 반환한다.
https://learn.microsoft.com/ko-kr/dotnet/api/system.console.read?view=net-7.0#system-console-read
예외
I/O 오류
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")] [System.Runtime.Versioning.UnsupportedOSPlatform("android")]
public static int Read ();
예시
int tmp = Console.Read(); // 1
Console.Write("{0}", tmp); // 49
Console.ReadLine()
입력: 표준 입력 스트림에서 다음 줄의 문자를 읽는 입력을 받는다.
반환: 입력 스트림의 다음 줄 문자를 반환하거나 사용할 수 있는 줄이 더 이상 없으면 null을 반환한다.
https://learn.microsoft.com/ko-kr/dotnet/api/system.console.readline?view=net-7.0
예외
I/O 오류
메모리가 부족하여 반환된 문자열의 버퍼를 할당할 수 없음
다음 문자 줄의 문자 수가 Int32.MaxValue보다 큰 경우
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")] [System.Runtime.Versioning.UnsupportedOSPlatform("android")]
public static string? ReadLine ();
예시
string tmp = Console.ReadLine(); // hello
Console.WriteLine("{0}", tmp); // hello
'프로그래밍 > C#' 카테고리의 다른 글
[C#] 진법에 따른 숫자 리터럴 (0) | 2023.01.26 |
---|---|
[C#] stopwatch 시간 측정 (0) | 2023.01.25 |
[C#] @의 의미 (0) | 2023.01.18 |
[C#] checked / unchecked (0) | 2023.01.17 |
[C#] Switch (0) | 2022.12.20 |