Vacío
Anteriormente nos encontramos con void
cuando vimos funciones que no devuelven nada o simplemente muestran texto en la pantalla.
Ten en cuenta que no podemos declarar una variable del tipo void
.
Sin embargo, podemos crear un puntero void*
que apunta a una ubicación de memoria.
Nota
Si has trabajado en los ejercicios de punteros en la sección, sabrás que todos los punteros ocupan 8 bytes. Un puntero
void*
no es diferente.
Un puntero void*
no está vinculado a ningún tipo de dato específico. Esta flexibilidad nos permite almacenar la dirección de cualquier tipo de dato en él.
Sin embargo, hay una trampa: no podemos desreferenciar un puntero void*
.
Nota
Esta limitación proviene de la misma razón por la que no podemos declarar variables del tipo
void
.
¡Realiza una conversión de tipo explícita!
Main.c
123456789101112131415161718192021#include <stdio.h> int main() { char c = 'F'; int i = 100; double d = 3.15; void* pV; pV = &c; printf("%c \n", *((char*)pV)); pV = &i; printf("%d \n", *((int*)pV)); pV = &d; printf("%.2f \n", *((double*)pV)); return 0; }
¡Felicitaciones por completar el curso básico de programación en C! Si estás ansioso por profundizar en este fascinante y lógico lenguaje de programación, te recomiendo encarecidamente explorar temas como macros, algoritmos de ordenamiento y estructuras de datos. Además, familiarizarte con una de las distribuciones de Linux es invaluable para cualquier programador experimentado en C.
¡Buena suerte!
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Awesome!
Completion rate improved to 2.63
Vacío
Desliza para mostrar el menú
Anteriormente nos encontramos con void
cuando vimos funciones que no devuelven nada o simplemente muestran texto en la pantalla.
Ten en cuenta que no podemos declarar una variable del tipo void
.
Sin embargo, podemos crear un puntero void*
que apunta a una ubicación de memoria.
Nota
Si has trabajado en los ejercicios de punteros en la sección, sabrás que todos los punteros ocupan 8 bytes. Un puntero
void*
no es diferente.
Un puntero void*
no está vinculado a ningún tipo de dato específico. Esta flexibilidad nos permite almacenar la dirección de cualquier tipo de dato en él.
Sin embargo, hay una trampa: no podemos desreferenciar un puntero void*
.
Nota
Esta limitación proviene de la misma razón por la que no podemos declarar variables del tipo
void
.
¡Realiza una conversión de tipo explícita!
Main.c
123456789101112131415161718192021#include <stdio.h> int main() { char c = 'F'; int i = 100; double d = 3.15; void* pV; pV = &c; printf("%c \n", *((char*)pV)); pV = &i; printf("%d \n", *((int*)pV)); pV = &d; printf("%.2f \n", *((double*)pV)); return 0; }
¡Felicitaciones por completar el curso básico de programación en C! Si estás ansioso por profundizar en este fascinante y lógico lenguaje de programación, te recomiendo encarecidamente explorar temas como macros, algoritmos de ordenamiento y estructuras de datos. Además, familiarizarte con una de las distribuciones de Linux es invaluable para cualquier programador experimentado en C.
¡Buena suerte!
¡Gracias por tus comentarios!