Contenido del Curso
C Básico
C Básico
Punteros
Usando el operador de referencia &
y el operador de desreferencia *
, podemos crear y trabajar con punteros.
Un puntero es un tipo de dato, al igual que int
, char
o double
.
El puntero está diseñado para almacenar una dirección, la cual puedes obtener usando el operador &
.
Para declarar un puntero, antepón el carácter *
.
En esencia, un puntero es una variable que contiene la dirección de otro objeto.
Nota
Típicamente, los punteros se nombran anteponiendo la letra
p
al nombre del objeto al que apuntan.
Cuando desreferencias un puntero, accedes al valor de la variable a la que apunta.
Main
#include <stdio.h> int main() { int x = 22543; // variable int* pX = &x; // `pX` is pointer to `x` printf("The value of `pX` is %p\n", pX); // value of pointer `pX` printf("The value of `x` by pointer `pX` is %d\n", *pX); // pointer dereference return 0; }
Nota
*(&variable) == *pVariable
Si intentas desreferenciar un puntero nulo, el compilador generará un error:
Ejemplo proporcionado para mostrar el error
Main
#include <stdio.h> int main() { int* pX; printf("x = %p", pX); return 0; }
Swipe to show code editor
Determina el tamaño de los punteros int
y double
.
¡Gracias por tus comentarios!
Punteros
Usando el operador de referencia &
y el operador de desreferencia *
, podemos crear y trabajar con punteros.
Un puntero es un tipo de dato, al igual que int
, char
o double
.
El puntero está diseñado para almacenar una dirección, la cual puedes obtener usando el operador &
.
Para declarar un puntero, antepón el carácter *
.
En esencia, un puntero es una variable que contiene la dirección de otro objeto.
Nota
Típicamente, los punteros se nombran anteponiendo la letra
p
al nombre del objeto al que apuntan.
Cuando desreferencias un puntero, accedes al valor de la variable a la que apunta.
Main
#include <stdio.h> int main() { int x = 22543; // variable int* pX = &x; // `pX` is pointer to `x` printf("The value of `pX` is %p\n", pX); // value of pointer `pX` printf("The value of `x` by pointer `pX` is %d\n", *pX); // pointer dereference return 0; }
Nota
*(&variable) == *pVariable
Si intentas desreferenciar un puntero nulo, el compilador generará un error:
Ejemplo proporcionado para mostrar el error
Main
#include <stdio.h> int main() { int* pX; printf("x = %p", pX); return 0; }
Swipe to show code editor
Determina el tamaño de los punteros int
y double
.
¡Gracias por tus comentarios!