Casos de Uso de Punteros
Cuando se pasa una variable a una función, esencialmente se está pasando su valor. Esto significa que la función recibe una copia de los datos. Cualquier modificación realizada dentro de la función no afecta a la variable original.
main.cpp
12345678910#include <iostream> void increment(int num) { num++; } int main() { int num = 5; increment(num); std::cout << "Original value: " << num << std::endl; }
Se pueden utilizar punteros para permitir que una función modifique la variable original. Esto implica pasar una dirección de memoria como argumento en lugar del valor real.
main.cpp
123456789101112#include <iostream> void increment(int* num) { (*num)++; } int main() { int num = 5; int* p_num = # increment(p_num); std::cout << "Original value: " << num << std::endl; }
Se puede omitir la creación de un puntero a una variable y, en su lugar, utilizar directamente el operador de dirección al pasar una variable.
¡Gracias por tus comentarios!
single
Casos de Uso de Punteros
Desliza para mostrar el menú
Cuando se pasa una variable a una función, esencialmente se está pasando su valor. Esto significa que la función recibe una copia de los datos. Cualquier modificación realizada dentro de la función no afecta a la variable original.
main.cpp
12345678910#include <iostream> void increment(int num) { num++; } int main() { int num = 5; increment(num); std::cout << "Original value: " << num << std::endl; }
Se pueden utilizar punteros para permitir que una función modifique la variable original. Esto implica pasar una dirección de memoria como argumento en lugar del valor real.
main.cpp
123456789101112#include <iostream> void increment(int* num) { (*num)++; } int main() { int num = 5; int* p_num = # increment(p_num); std::cout << "Original value: " << num << std::endl; }
Se puede omitir la creación de un puntero a una variable y, en su lugar, utilizar directamente el operador de dirección al pasar una variable.
Desliza para comenzar a programar
Escribir una función que intercambie los valores de dos variables enteras utilizando punteros.
- Crear una función
swapque reciba dos punteros a enteros como parámetros. - Dentro de la función, utilizar una variable temporal para almacenar el valor de la primera variable.
- Asignar el valor de la segunda variable a la primera utilizando desreferenciación de punteros.
- Asignar el valor de la variable temporal a la segunda variable utilizando desreferenciación de punteros.
- En
main, llamar aswap, pasando las direcciones de las dos variables.
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