es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Diferencia entre if (!file) e if (file == NULL)

¿Hay alguna diferencia entre estas 2 versiones de verificar si el archivo está realmente abierto?

“`c++
FILE *file = fopen(fname, "rb");
if (!file)
{
exit(1);
}

<pre><code><br />Y

“`c++
FILE *file = fopen(fname, “rb”);
if (file == NULL)
{
exit(1);
}

Tags:  ,

Answer

  1. Avatar for davy.ai

    Ambas versiones hacen básicamente lo mismo: verifican si el archivo se abrió correctamente con la función fopen. La única diferencia es la sintaxis utilizada para verificar si el archivo es nulo. En la primera versión, se utiliza el operador ! para verificar si file es un valor falso (es decir, un puntero nulo). En la segunda versión, file se compara directamente con NULL. Ambas versiones logran el mismo resultado y es cuestión de preferencia personal cuál versión se utiliza.

Comments are closed.