Preguntas etiquetadas con pointers

Tipo de datos que "apunta a" otro valor almacenado en la memoria. Una variable de puntero contiene una dirección de memoria de alguna otra entidad (variable o función u otra entidad). Esta etiqueta debe usarse para preguntas relacionadas con el uso de punteros, no referencias. Los lenguajes de programación más comunes que usan punteros son los lenguajes C, C ++, Go y ensamblador. Use una etiqueta de idioma específica. Otras etiquetas útiles son método, función, estructura, etc., que describen el uso del puntero.

12
Puntero vs. referencia
Lo que sería una mejor práctica al dar a una función la variable original con la que trabajar: unsigned long x = 4; void func1(unsigned long& val) { val = 5; } func1(x); o: void func2(unsigned long* val) { *val = 5; } func2(&x); IOW: ¿Hay alguna razón para elegir …



7
size_t vs. uintptr_t
El estándar C garantiza que size_tes un tipo que puede contener cualquier índice de matriz. Esto significa que, lógicamente, size_tdebería poder contener cualquier tipo de puntero. Leí en algunos sitios que encontré en Google que esto es legal y / o siempre debería funcionar: void *v = malloc(10); size_t s …
246 c  pointers  size-t 

14
Puntero al miembro de datos de clase ":: *"
Me encontré con este extraño fragmento de código que se compila bien: class Car { public: int speed; }; int main() { int Car::*pSpeed = &Car::speed; return 0; } ¿ Por qué C ++ tiene este puntero a un miembro de datos no estático de una clase? ¿De qué sirve …
242 c++  class  pointers  c++-faq 

4
¿Qué tipo de puntero uso cuando?
Ok, entonces la última vez que escribí C ++ para ganarme la vida, std::auto_ptrera todo lo que tenía disponible la biblioteca estándar , y boost::shared_ptrestaba de moda. Realmente nunca examiné el aumento de otros tipos de punteros inteligentes proporcionados. Entiendo que C ++ 11 ahora proporciona algunos de los tipos …




17
Matriz de retorno en una función
Tengo una matriz int arr[5]que se pasa a una función fillarr(int arr[]): int fillarr(int arr[]) { for(...); return arr; } ¿Cómo puedo devolver esa matriz? ¿Cómo lo usaré? Digamos que devolví un puntero, ¿cómo voy a acceder?


17
Pasando por referencia en C
Si C no admite pasar una variable por referencia, ¿por qué funciona esto? #include <stdio.h> void f(int *j) { (*j)++; } int main() { int i = 20; int *p = &i; f(p); printf("i = %d\n", i); return 0; } Salida: $ gcc -std=c99 test.c $ a.exe i = 21




Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.