Menu
Coddy logo textTech

Comprobación de errores

Parte de la sección Fundamentos del Journey de GO de Coddy — lección 105 de 109.

En Go, verificamos los errores usando sentencias if. Este patrón es extremadamente común.

Comprueba si ocurrió un error usando if err != nil:

func main() {
    result, err := divide(10, 0)
    
    if err != nil {
        fmt.Println("Error occurred:", err)
        return // Detener la ejecución si hay un error
    }
    
    // Continuar solo si no hay error
    fmt.Println("Result:", result)
}

La salida será:

Error occurred: cannot divide by zero
challenge icon

Desafío

Principiante

En Go, las funciones a menudo devuelven un valor de error que necesitas verificar antes de usar el resultado. En este desafío, practicarás la verificación de errores utilizando la sentencia if.

Tenemos una función llamada openFile que simula la apertura de un archivo y devuelve un error si el archivo no existe. Tu tarea es verificar si hay un error e imprimir un mensaje apropiado.

Hoja de referencia

Verifica si hay errores usando if err != nil:

result, err := someFunction()

if err != nil {
    fmt.Println("Error occurred:", err)
    return // Detener la ejecución si hay un error
}

// Continuar solo si no hay error
fmt.Println("Result:", result)

Pruébalo tú mismo

package main

import (
	"fmt"
)

// Esta función simula la apertura de un archivo
// Devuelve un error si el archivo no existe
func openFile(filename string) error {
	if filename == "data.txt" {
		return nil // nil significa que no hay error
	} else {
		return fmt.Errorf("file %s not found", filename)
	}
}

func main() {
	filename := "config.txt"
	
	// Llamar a la función openFile
	err := openFile(filename)
	
	// TODO: Comprobar si err no es nil (lo que significa que hubo un error)
	// Si hubo un error, imprimir: "Error: " seguido del mensaje de error
	// Si no hubo error, imprimir: "File opened successfully"
	
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos