single
Breve Descripción de Punteros
Desliza para mostrar el menú
Operador de desreferenciación
Un puntero es una variable que contiene la dirección de otro objeto.
El operador de desreferenciación "*" devuelve el valor almacenado en la dirección.
La declaración e inicialización de un puntero se ve así:
int* pName = NULL;
main.c
12345678#include <stdio.h> int main() { int* pName = NULL; printf("%p\n", pName); // `%p` is a specifier for a pointer return 0; }
Operador de referencia &
El operador & devuelve la dirección de un objeto:
main.c
12345678#include <stdio.h> int main() { int variable; printf("%p\n", &variable); return 0; }
Una variable de tipo puntero se utiliza para almacenar la dirección, que es devuelta por el operador &.
int variable;
int* pVariable;
pVariable = &variable;
Para desempaquetar el contenido en la dirección especificada, se debe utilizar el operador * sobre una variable de tipo puntero.
main.c
12345678910#include <stdio.h> int main() { int variable = 1024; int* pVariable = &variable; printf("Address: %p\n", pVariable); // `%p` specifier for a pointer printf("Returned value by address: %d\n", *(pVariable)); // using `*` to pointer return 0; }
Desliza para comenzar a programar
Tienes un producto con un precio específico y necesitas aumentar su valor en un porcentaje dado.
Tu tarea es implementar una función que actualice el precio del producto utilizando un puntero.
Dentro de la función updatePrice:
- Utiliza el operador de desreferenciación (
*) para acceder al valor actual almacenado en memoria — por ejemplo,*pricese refiere a100.0. - Calcula el porcentaje del precio actual —
*price * percentIncrease / 100.0, que para el 10% de 100.0 equivale a10.0. - Suma este porcentaje al valor original para obtener el precio actualizado —
*price = *price + (percentage part). - La función no retorna ningún valor — modifica directamente el valor a través del puntero.
Example
| Initial Price | Increase (%) | Updated Price |
|---|---|---|
| 100.0 | 10.0 | 110.0 |
| 250.0 | 5.0 | 262.5 |
| 80.0 | 25.0 | 100.0 |
Solución
¡Gracias por tus comentarios!
single
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla