Error handling in Go
Errors happen all the time, so it is our job to both catch and handle them, especially when writing code that deals with sensitive system information and files. The good news is that Go has a special data type called error
that helps signify erroneous states; if an error
variable has a nil
value, then there is no error situation.
As you saw in the addCLA.go
program that was developed in the previous chapter, you can ignore the error
variable that is returned by most Go functions using the _
character:
temp, _ := strconv.Atoi(arguments[i])
However, this is not considered good practice and should be avoided, especially on systems software and other kinds of critical software, such as server processes.
As you will see in Chapter 6, File Input and Output, even End of File (EOF) is a type of error that is returned when there is nothing left to read from a file. As EOF
is defined in the io
package, you can handle it as follows:
if err == io.EOF { // Do something }
However...