- 채점
- 런타임 에러
런타임 에러
는 프로그램이 비정상적으로 종료된 경우입니다.
2021년 1월 7일부터 아래 나와있는 언어는 런타임 에러 이유를 보여줍니다. 모든 런타임 에러 이유를 보여주는 것은 아닙니다.
공통
| 런타임 에러 이유 | 설명 |
|---|---|
| NZEC | Exit code가 0이 아님 |
| BrokenPipe |
C/C++에서void main을 사용하면 NZEC를 받을 수도 있습니다.
C/C++ (gcc)
언어: C99, C11, C90, C2x, C++98, C++11, C++14, C++17, C++20
| 런타임 에러 이유 | 설명 |
|---|---|
| AssertionFailed | assert함수가 실패 |
| Segfault | Segmentation fault |
| BusError | Bus error |
| InvalidPointer | munmap_chunk(): invalid pointer |
| OutOfBounds | 컨테이너 또는 배열에서 할당된 경계를 넘어가는 접근 발생 |
| DivisionByZero | 0으로 나눔 |
| FloatingPointException | |
| WithoutReturning | void형이 아닌 함수가 리턴을 하지 않음 |
| IntegerOverflow | |
| DoubleFree | double free or corruption |
| MisalignedAddress | |
| BufferOverflow | |
| InsufficientSpace | |
| NeverBeNull | |
| InvalidNextSize | free(): invalid next size |
| MemoryCorruption | malloc(): memory corruption |
| CorruptedList | corrupted double-linked list |
| AccessNullPointer | |
| AccessEmptyContainer | |
| StoreToNullPointer | |
| ShiftExponent | |
| PastTheEndIterator | attempt to decrement a past-the-end iterator. |
| LoadOfNull | |
| bad_alloc | std::bad_alloc |
| bad_array_new_length | std::bad_array_new_length |
| out_of_range | std::out_of_range |
| length_error | std::length_error |
| invalid_argument | std::invalid_argument |
Segfault, FloatingPointException, IllegalInstruction, BusError는 런타임 에러 이유를 찾기 위해 프로그램을 한 번 더 실행 시킵니다.
Python
언어: Python 3, PyPy3, Python 2, PyPy2
| 런타임 에러 이유 | 설명 |
|---|---|
| ValueError | |
| IndexError | |
| NameError | |
| TypeError | |
| AssertionError | |
| ImportError | |
| FileNotFoundError | |
| SyntaxError | |
| EOFError | |
| AttributeError | |
| RecursionError | |
| ZeroDivisionError | |
| ModuleNotFoundError | |
| UnboundLocalError | |
| OverflowError | |
| Error | 위에 없는 나머지 Error |
Java
언어: Java 8, Java 8 (OpenJDK), Java 11, Java 15, Kotlin (JVM)
| 런타임 에러 이유 | 설명 |
|---|---|
| NoSuchElement | java.util.NoSuchElementException |
| InputMismatch | java.util.InputMismatchException |
| NumberFormat | java.lang.NumberFormatException |
| IndexOutOfBounds | java.lang.IndexOutOfBoundsException |
| ArrayIndexOutOfBounds | java.lang.ArrayIndexOutOfBoundsException |
| StringIndexOutOfBounds | java.lang.StringIndexOutOfBoundsException |
| / by zero | java.lang.ArithmeticException: / by zero |
| Arithmetic | java.lang.ArithmeticException |
| StackOverflow | java.lang.StackOverflowError |
| FileNotFound | java.io.FileNotFoundException |
| NullPointer | java.lang.NullPointerException |
| IO | java.io.IOException |
| IllegalArgument | java.lang.IllegalArgumentException |
| EmptyStack | java.util.EmptyStackException |
| IllegalFormat | java.util.IllegalFormatConversionException |
| AccessControl | java.security.AccessControlException |
| NegativeArraySize | java.lang.NegativeArraySizeException |
| IllegalState | java.lang.IllegalStateException |
| UnknownFormat | java.util.UnknownFormatConversionException |
| ConcurrentModification | java.util.ConcurrentModificationException |
| ClassCast | java.lang.ClassCastException |
| ArrayStore | java.lang.ArrayStoreException |
| Unsupported | java.lang.UnsupportedOperationException |
| Exception | 위에 없는 나머지 Exception |
| main class Main | Error: Could not find or load main class Main |
| void main | Error: Main method must return a value of type void in class Main, pleasedefine the main method as:public static void main(String[] args) |
| static main | Error: Main method is not static in class Main, please define the main method as:public static void main(String[] args) |
언어: Java 8, Java 8 (OpenJDK), Java 11, Java 15
| 런타임 에러 이유 | 설명 |
|---|---|
| No main | Error: Main method not found in class Main, please define the main method as:public static void main(String[] args) |
언어: Kotlin (JVM)
| 런타임 에러 이유 | 설명 |
|---|---|
| No main | no main manifest attribute, in Main.jar |
| UninitializedPropertyAccess | kotlin.UninitializedPropertyAccessException |
.NET
언어: C#, F#, Visual Basic
| 런타임 에러 이유 | 설명 |
|---|---|
| Format | System.FormatException |
| IndexOutOfRange | System.IndexOutOfRangeException |
| Argument | System.ArgumentException |
| ArgumentNull | System.ArgumentNullException |
| PlatformNotSupported | System.PlatformNotSupportedException |
| ArgumentOutOfRange | System.ArgumentOutOfRangeException |
| Overflow | System.OverflowException |
| InvalidOperation | System.InvalidOperationException |
| Segfault | System.NullReferenceException로 추정되나 확실하지 않음 |
| Exception | 위에 없는 나머지 Exception |
node.js
언어: node.js
| 런타임 에러 이유 | 설명 |
|---|---|
| TypeError | |
| ReferenceError | |
| SyntaxError | |
| StackSizeExceeded | RangeError: Maximum call stack size exceeded |
| RangeError | |
| TypeError | |
| UnsupportedError | |
| Error | |
| AssertionFailed | |
| CannotFindModule | Error: Cannot find module |
| ENOENT | Error: ENOENT: no such file or directory |
| EACCES | Error: EACCES: permission denied |
| ENOTDIR | Error: ENOTDIR: not a directory |
Ruby
언어: Ruby, Ruby 1.8, Ruby 1.9, Golfscript
| 런타임 에러 이유 | 설명 |
|---|---|
| NoMethodError | |
| NameError | |
| ArgumentError | |
| TypeError | |
| SystemStackError | |
| LoadError | |
| IOError | |
| NoMemoryError | |
| RuntimeError | |
| SyntaxError | |
| RangeError | |
| FloatDomainError | |
| EncodingError | |
| Error | 위에 없는 나머지 Error |
| ENOENT | No such file or directory |
Go
언어: Go, Go (gccgo)
| 런타임 에러 이유 | 설명 |
|---|---|
| IndexOutOfRange | |
| SliceBoundsOutOfRange | |
| LenOutOfRange | |
| CapOutOfRange | |
| DivideByZero | |
| PermissionDenied | |
| Deadlock | |
| NilMap | |
| ValueOutOfRange | |
| InvalidSyntax | |
| ConcurrentMapWrites | |
| EOF | |
| InvalidNumber | |
| ZeroValue | |
| BufferCalledAfterScan | |
| ENOENT | Error: no such file or directory |
| BufferFull | |
| InterfaceConversion | |
| Panic | 위에 없는 나머지 |
| Segfault | Segmentation fault |