Ver Mensaje Individual
  #46 (permalink)  
Antiguo 26/09/2006, 11:46
MaxExtreme
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años, 2 meses
Puntos: 17
Cita:
Iniciado por Nivel7 Ver Mensaje
no evita en insitir en que no estoy equivocado.
Y yo sigo insistiendo en que no me has entendido. Vuelve a leer mis comentarios, aquí te les explico por 3ª vez:

El primer comentario que hice, simplemente te corregía una afirmación que habías hecho:

Cita:
Iniciado por MaxExtreme
En realidad, da =.

La aritmética de punteros se puede hacer tanto con enteros (como Instru hizo), lo cual es el uso normal, o como tú has hecho, sumando punteros (no muy normal).

p+1; // Instru
p+q // Nivel7
En ese comentario yo no veo nada incorrecto, ni veo que lo que haya dicho sea erróneo, como luego tú indicas en tu primera réplica:

Cita:
Iniciado por Nivel7
y esto no es del todo cierto.
¿Me puedes apuntar dónde no es del todo cierto?

Después, en mi segundo comentario te desmenuzo aún más tu mensaje, y te pongo ejemplos para demostrarte que da igual sumar enteros que punteros a un char*, así:

Cita:
Iniciado por MaxExtreme
Si tú a un char * le sumas (char)K, incrementarás K bytes.
Si tú a un char * le sumas (short)K, incrementarás K bytes.
Si tú a un char * le sumas (int)K, incrementarás K bytes.
... y lo mismo siempre.
Mientras que en tu réplica vuelves a malinterpretar tu mensaje, y me respondes con algo similar a lo que te escribí pero ya en C:

Cita:
Iniciado por Nivel7
char *result1 = (char*)((char* )&cad[25] - 8);
char *result2 = (char*)((short* )&cad[25] - 4);
char *result3 = (char*)((int* )&cad[25] - 2);
char *result4 = (char*)((long long*)&cad[25] - 1);
Que si te fijas, es diferente a lo que yo estaba hablando.


Fíjate la diferencia entre lo que hablaba yo y en lo que lo has transformado tú:
- MaxExtreme: Sumar ENTEROS (char, short, int) a CHAR*
- Nivel7: Sumar INTs a PUNTEROS (char *, short *, int *).


No hace falta que cites libros...

Última edición por MaxExtreme; 26/09/2006 a las 12:11