elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  (Consulta) - Declaracion de punteros en Null
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: (Consulta) - Declaracion de punteros en Null  (Leído 1,774 veces)
palacio29

Desconectado Desconectado

Mensajes: 103


Ver Perfil
(Consulta) - Declaracion de punteros en Null
« en: 16 Mayo 2019, 03:14 am »

[LENGUAJE C] Tengo la siguiente sentencia y nose como interpretarla.

Char * Arreglo = NULL;

Que significa esto?.
Que el contenido de este arreglo es vacio  y como es la direccion de memoria de esa variable?.Porque hago un %p y salen todos ceros...


En línea

K-YreX
Moderador
***
Desconectado Desconectado

Mensajes: 1.008



Ver Perfil
Re: (Consulta) - Declaracion de punteros en Null
« Respuesta #1 en: 16 Mayo 2019, 04:45 am »

Cuando creas un puntero, ese puntero guarda una dirección de memoria. Si el puntero no lo inicializas al crearlo, este apuntará a una dirección de memoria cualquiera que puedes ver pero no puedes usar porque no sabes a qué está apuntando. Se puede hacer que apunte a NULL para tener una referencia de que ese puntero no está en uso en ese momento.

Y ten cuidado con lo del arreglo... Un puntero no es un arreglo. Un puntero apunta al comienzo de un arreglo en el caso de que hayas reservado memoria o que sea un array estático, que no es el caso.


En línea

Código
  1. cout << "Todos tenemos un defecto, un error en nuestro código" << endl;
MAFUS


Desconectado Desconectado

Mensajes: 1.603



Ver Perfil
Re: (Consulta) - Declaracion de punteros en Null
« Respuesta #2 en: 16 Mayo 2019, 09:29 am »

NULL es 0, cuando C ve que un puntero apunta a la posición 0 o NULL sabe que no está apuntando a nada.

Esto le sirve al programador para saber si el puntero está inicializado o no, por ejemplo cuando haces uso de fopen está devuelve un puntero. Este puntero puede ser a una estructura FILE correctamente inicializada o a NULL indicando que no se pudo abrir el archivo. O strstr devolverá NULL si una cadena ni está contenida en la otra.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines