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

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Diferencia entre usar aritmetica de punteros y corchetes en vectores en C
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Diferencia entre usar aritmetica de punteros y corchetes en vectores en C  (Leído 3,067 veces)
xoker

Desconectado Desconectado

Mensajes: 24



Ver Perfil WWW
Diferencia entre usar aritmetica de punteros y corchetes en vectores en C
« en: 26 Diciembre 2013, 10:43 am »

Buenas, pues simplemente esa es mi pregunta, siempre pense que lo tenia claro, que era indistinto usar una u otra opcion, pero para memorias dinamicas era forzoso usar aritmetica de punteros (eso me contaron en la universidad...  :huh:), pero tras acceder a un vector dinamico con corchetes sin ningun problema pues de repente me he dado cuenta de que no es necesario usar aritmetica de punteros forzosamente en ningun caso... es esto asi?

Para que no quede duda, con aritmetica de punteros me refiero a acceder a una posicion de un vector tal que asi: *(vector + i), y por la forma de los corchetes (no recuerdo su nombre  :silbar:) me refiero a: vector.

Un saludo y a ver si podeis sacarme del lio!


« Última modificación: 26 Diciembre 2013, 10:50 am por xoker » En línea

amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: Diferencia entre usar aritmetica de punteros y corchetes en vectores en C
« Respuesta #1 en: 26 Diciembre 2013, 12:57 pm »

No es necesario en ningún caso, la diferencia es inapreciable actualmente y en muchas ocasiones el compilador hace ese trabajo por ti.

Por cierto la aritmetica de punteros parte de ir incrementando el puntero (sobreescribiendolo), si haces una cuenta fija (p+i) estas haciendo lo mismo que los corchetes.


En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
xoker

Desconectado Desconectado

Mensajes: 24



Ver Perfil WWW
Re: Diferencia entre usar aritmetica de punteros y corchetes en vectores en C
« Respuesta #2 en: 26 Diciembre 2013, 13:08 pm »

No es necesario en ningún caso, la diferencia es inapreciable actualmente y en muchas ocasiones el compilador hace ese trabajo por ti.

Por cierto la aritmetica de punteros parte de ir incrementando el puntero (sobreescribiendolo), si haces una cuenta fija (p+i) estas haciendo lo mismo que los corchetes.

Pues listo, perfecto entonces con la duda, muchas gracias por responder.

A partir de ahora, siempre usare los corchetes! No entiendo porque en la facultad nos cuentan tantas mentiras...  >:(
En línea

amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: Diferencia entre usar aritmetica de punteros y corchetes en vectores en C
« Respuesta #3 en: 26 Diciembre 2013, 13:15 pm »

Pues porque hace 20 años se miraba muchísimo la eficiencia (a veces se rescribían métodos en ensamblador para mejorarla aún más).

Hoy en día los compiladores son muchísimos mejores que antes. Esas optimizaciones ya las suelen hacer ellos solitos (y si no, tampoco vas a notar ninguna diferencia).

El porque siguen contando esto es porque hay muchos profesores prehístoricos que no se reciclan ni a tiros  :silbar:
En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re:
« Respuesta #4 en: 26 Diciembre 2013, 13:27 pm »

Recordemos, que la aritmética de punteros es ir un paso más hacia la comprensión de cómo funcionan los punteros.
Me parece realmente útil saberla, aunque menos útil utilizarla en proyectos.

Enviado desde mi ST21i mediante Tapatalk
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines