Preguntas etiquetadas con pointers

94
¿Cuál es el punto de los punteros de función?

Tengo problemas para ver la utilidad de los punteros de función. Supongo que puede ser útil en algunos casos (existen, después de todo), pero no puedo pensar en un caso en el que sea mejor o inevitable usar un puntero de función. ¿Podría dar algún ejemplo del buen uso de punteros de función (en C...

92
Eliminar un puntero en C ++

Contexto: Estoy tratando de entender los consejos, los vimos hace un par de semanas en la escuela y mientras practicaba hoy me encontré con un tonto problema, puede ser muy sencillo para usted, pero tengo poca o ninguna experiencia en programación. He visto bastantes preguntas en SO sobre la...

91
Prueba de punteros para la validez (C / C ++)

¿Hay alguna forma de determinar (programáticamente, por supuesto) si un puntero dado es "válido"? Verificar NULL es fácil, pero ¿qué pasa con cosas como 0x00001234? Cuando se intenta eliminar la referencia a este tipo de puntero, se produce una excepción / bloqueo. Se prefiere un método...

91
¿Qué es un "puntero gordo" en Rust?

Ya he leído el término "puntero gordo" en varios contextos, pero no estoy seguro de qué significa exactamente y cuándo se usa en Rust. El puntero parece ser dos veces más grande que un puntero normal, pero no entiendo por qué. También parece tener algo que ver con los objetos de rasgo....

90
¿Es posible inicializar un puntero C a NULL?

Había estado escribiendo cosas como char *x=NULL; asumiendo que char *x=2; crearía un charpuntero a la dirección 2. Pero, en The GNU C Programming Tutorial dice que int *my_int_ptr = 2;almacena el valor entero 2en cualquier dirección aleatoria en la my_int_ptrque se encuentre cuando se...

90
Referencias de rango en lugar de valores

Vi que el rango devuelve la clave y la "copia" del valor. ¿Hay alguna forma de que ese rango devuelva la dirección del artículo? Ejemplo package main import "fmt" type MyType struct { field string } func main() { var array [10]MyType for _, e := range array { e.field = "foo" } for _,...

89
Conversión de un puntero de función a otro tipo

Digamos que tengo una función que acepta un void (*)(void*)puntero de función para usar como devolución de llamada: void do_stuff(void (*callback_fp)(void*), void* callback_arg); Ahora, si tengo una función como esta: void my_callback_function(struct my_struct* arg); ¿Puedo hacer esto de...