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

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Poner Vector a null
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Poner Vector a null  (Leído 2,061 veces)
pozo_23

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Poner Vector a null
« en: 21 Diciembre 2016, 19:24 pm »

Hola, hay alguna manera de poner alguna componente de un vector vacia? Es decir si yo tengo un vector de longitud 10, meto datos desde la posicion 0 a la posicion 5, y y desde la posicion 6 a la posicion 9 no quiero que haya nada dentro del vector, ni el 0 que aparece por defecto. ¿Es posible? Gracias


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Poner Vector a null
« Respuesta #1 en: 21 Diciembre 2016, 19:28 pm »

el 0 no aparece por defecto...

por otro lado, cuando hablamos de binario no puedes tener nada, es 1, es 0 o es una combinacion de ellos!

en C existen los tipos de datos y cada uno contiene ciertos timpos de valores, por lo menos int solo contiene numeros, no conoce el concepto de null (en hecho si lo conoce, pero como un cero), sobre todo null aplica es para los tipo puntero


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
dato000


Desconectado Desconectado

Mensajes: 3.034



Ver Perfil
Re: Poner Vector a null
« Respuesta #2 en: 21 Diciembre 2016, 22:22 pm »

No es posible usar un vector con posiciones vacias, por convención es necesario inicializar elementos con valores para poder establecer espacios de memoria para las posiciones de ese vector, arreglo o matriz.

Cuando se declara un vector, arreglo o matriz que no tiene valores inicializados, el compilador asigna valores arbitrarios (básicamente el número es dado por las posiciones de memoria en donde han sido instanciados si no estoy mal), a las posiciones dadas por la longitud de ese objeto, el compilador exige saber si existen valores para crear los vectores.

Ahora, lo más parecido que podria hacerse es inicializar un valor y asignarlo a un puntero:

Código
  1. Cat c;
  2.  
  3. //Apuntador p que se crea con el valor de c
  4. Cat *p = &c;
  5.  
  6. //Asignar el puntero como vacio
  7. p = NULL;
  8.  

Aunque en este caso, yo deberia preguntar, para que carajos se quiere un vector con elementos nulos, si en este caso, si se tienen solo 5 posiciones asignadas, se puede simplemente generar una nueva posición en tiempos de compilación con un push y listo se genera la nueva posición del vector sin tener ese desperdicio de memoria.

Yo creeria que el error va más por los lados de la capa 8: entre la silla y el teclado  :laugh: :laugh: :laugh:
En línea


Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Session Null
Hacking
cundre 0 3,380 Último mensaje 17 Junio 2010, 08:13 am
por cundre
null
Foro Libre
Jeferi 2 2,568 Último mensaje 4 Septiembre 2010, 13:25 pm
por #!drvy
get me devuelve null no se porque
Java
mapers 6 5,750 Último mensaje 28 Julio 2011, 05:26 am
por mapers
[Tema Eliminado]
Java
Mitsu 3 3,021 Último mensaje 11 Octubre 2013, 17:56 pm
por jexus
(Ayuda) La función wglMakeCurrent(NULL, NULL) crashea el programa a veces
Programación C/C++
Seyro97 1 2,125 Último mensaje 10 Junio 2015, 15:34 pm
por Eternal Idol
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines