elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problema y duda con incremento de punteros
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema y duda con incremento de punteros  (Leído 1,884 veces)
NicolasPileci

Desconectado Desconectado

Mensajes: 32



Ver Perfil
Problema y duda con incremento de punteros
« en: 6 Septiembre 2016, 20:20 pm »

Hola a todos, buenos dias.

Tengo una duda sobre el incremento de un puntero a int.

Código
  1.  
  2. #include <stdio.h>
  3.  
  4. int mi_arreglo[] = {1,23,17,4,-5,100};
  5. int *ptr;
  6. int main(void)
  7. {
  8.    int i;
  9.    ptr = &mi_arreglo[0];
  10.    printf("\n\n");
  11.    for (i = 0; i < 6; i++)
  12.    {
  13.        printf("mi_arreglo[%d] = %d ", i, mi_arreglo[i]); /*<-- A */
  14.        printf("ptr + %d = %d\n",i, *(ptr + i)); /*<-- B */
  15.    }
  16.    return 0;
  17. }
  18.  
  19.  

Si reemplazamos B por: printf("ptr + %d = %d\n", i, *ptr++);

Imprime los valores en el orden correcto.

Pero si en cambio reemplazamos B por: printf("ptr + %d = %d\n", i, *(++ptr));

Imprime los valores siguientes a la posición original.

Yo había leído que ptr++ equivale a ++ptr, pero como se puede ver en este ejemplo, la relación no se cumple.

¿Es realmente así o estoy equivocado?

Gracias!


En línea

AlbertoBSD
Programador y
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.705


🏴 Libertad!!!!!


Ver Perfil WWW
Re: Problema y duda con incremento de punteros
« Respuesta #1 en: 6 Septiembre 2016, 20:24 pm »

Uno es pre-incremento y el otro es pos-incremento.

El primero ++ptr hace el incremento y despues se guarda el valor resultante como parametro para printf

El segundo ptr++ primero guarda el valor como parametro de printf y luego realiza el incremento.

Saludos!


En línea

NicolasPileci

Desconectado Desconectado

Mensajes: 32



Ver Perfil
Re: Problema y duda con incremento de punteros
« Respuesta #2 en: 6 Septiembre 2016, 20:34 pm »

Barbaro,

Muchas gracias!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[C] - Duda punteros
Programación C/C++
h0oke 2 2,595 Último mensaje 23 Mayo 2010, 02:19 am
por h0oke
Duda Punteros Dobles/Array de punteros
Programación C/C++
MisterJava 2 5,167 Último mensaje 30 Diciembre 2012, 20:19 pm
por MisterJava
duda de como usar el incremento en una operación
Programación C/C++
RaquelAG 4 2,957 Último mensaje 27 Enero 2013, 23:29 pm
por RaquelAG
Incremento de punteros « 1 2 »
Programación C/C++
NathanD 11 5,579 Último mensaje 31 Marzo 2013, 18:42 pm
por 85
Problema con uso del incremento de una variable.
Programación C/C++
SDCC 6 3,780 Último mensaje 30 Abril 2018, 19:24 pm
por JPS
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines