Easiest way to force a crash in Swift

后端 未结 6 917

What is the easiest way to force a crash in Swift?

I would like to use only one line of code (something that I can add quickly).

I don\'t want to use breakp

相关标签:
6条回答
  • 2020-12-24 13:41

    Typically you'd use

    fatalError()
    

    or

    preconditionFailure()
    

    for that.

    These do exactly the same: terminating the program, therefore the code after this stamement never gets executed. All of the functions that have this behaviour are annotated with the @noreturn attribute

    You can also do something like this:

    func getInt() -> Int {
        fatalError()
    }
    

    The function is supposed to return an Int, but because the program never gets to that point, you don't have to return anything.

    0 讨论(0)
  • 2020-12-24 13:51
    import Darwin
    
    exit(0)
    

    The C library function void exit(int status) terminates the calling process immediately. Any open file descriptors belonging to the process are closed and any children of the process are inherited by process 1, init, and the process parent is sent a SIGCHLD signal.


    1/0

        var a = 0
    
        override func viewDidLoad() {
            super.viewDidLoad()
            _ = 1/a
    
    0 讨论(0)
  • 2020-12-24 13:57
    [0][1]
    

    This tries to access second element of a one element array.

    0 讨论(0)
  • 2020-12-24 13:59

    If you have an integer variable, you can multiply it by the integer limit. (Similar method for UInt)

    0 讨论(0)
  • 2020-12-24 14:01

    You can simply try to access an optional value that has nil value... if you already have a variable declared and it is an optional, just call it (don't forget to unwrap) and it will crash for sure

    0 讨论(0)
  • 2020-12-24 14:04

    reversed ranges,

    21...3
    

    Thread 1: Fatal error: Can't form Range with upperBound < lowerBound

    0 讨论(0)
提交回复
热议问题