Qué es un error no declarado: cuando usamos alguna constante en nuestro programa, tal vez sean constantes integradas y pueden ser creadas por un usuario de acuerdo con el requisito. Pero cuando usamos alguna constante, y no están integradas y tampoco definidas por un usuario en esa condición, obtenemos un error no declarado. A continuación se muestra el código que muestra el ejemplo de error no declarado NULL :
CPP
using namespace std; // Driver Code int main() { // NULL declared int* num = NULL; return 0; }
Complejidad del tiempo: O(1)
Espacio Auxiliar: O(1)
El código anterior mostrará un error como «Error no declarado NULL» . El motivo del error no declarado NULL es que «NULL» no es una constante integrada. ¿Por qué necesitamos NULL? Cuando creamos algún puntero en nuestro programa, se utilizan para almacenar direcciones. Pero una variable de puntero no inicializada es muy peligrosa, por lo que podemos asignarles NULL , lo que significa que no apuntan a ninguna ubicación de memoria, por lo que nuestro programa se ejecuta sin problemas y de forma segura. Ahora, si NULL no es una constante incorporada, ¿cómo podemos superar el error no declarado NULL? A continuación se muestra un código que se utiliza para eliminar el error no declarado NULL:
- Asignar 0: en lugar de asignar NULL a num, simplemente podemos asignar 0 , lo que indica que no apunta a ninguna dirección, por lo que la solución más simple es simplemente asignar 0. El siguiente código muestra su implementación:
CPP
using namespace std; // Driver Code int main() { int* num = 0; return 0; }
Complejidad del tiempo: O(1)
Espacio Auxiliar: O(1)
- Incluir el archivo de encabezado «stddef.h»: en el archivo de encabezado stddef.h , NULL ya está definido, por lo que podemos incluir este archivo de encabezado en nuestro programa y nuestro programa se compilará y ejecutará sin ningún error. El siguiente código muestra su implementación:
C
#include <stddef.h> // Driver Code int main() { int* num = NULL; return 0; }
Complejidad del tiempo: O(1)
Espacio Auxiliar: O(1)
- Incluir el archivo de encabezado de iostream: en C++ , si queremos ejecutar nuestro programa sin un error no declarado NULL, simplemente podemos incluir iostream en nuestro programa y hacer que suceda sin ningún error. El siguiente código muestra su implementación:
CPP
#include <iostream> using namespace std; // Driver Code int main() { int* num = NULL; return 0; }
Complejidad del tiempo: O(1)
Espacio Auxiliar: O(1)
- #define NULL 0: Usando la línea #define NULL 0 en nuestro programa, podemos resolver el error no declarado NULL. El siguiente código muestra su implementación:
CPP
#define NULL 0 using namespace std; // Driver Code int main() { int* num = NULL; return 0; }
Complejidad del tiempo: O(1)
Espacio Auxiliar: O(1)
- En C++ más reciente (C++ 11 y superior): : nullptr es una constante incorporada, por lo que podemos usarla en lugar de NULL.
CPP
#include <iostream> using namespace std; // Driver Code int main() { int* num = nullptr; return 0; }
Complejidad de tiempo: O(1) // La declaración/inicialización toma un tiempo constante
Espacio auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por ramswarup_kulhary y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA