Título: [C]Duda, typedef. Publicado por: Binary_Death en 15 Agosto 2010, 04:00 am Este era el post de otra duda, pero como la solucioné antes de que nadie respondiera, economizo, edito y planteo otra ;D
Typedef permite definir alias para los tipos de variables, de tal forma que si yo hago... Código: typedef int entero; Puedo definir la variable "a" como un entero cuyo valor es 5. Bien, la cuestión es... en mi libro de aprendizaje, vienen la siguientes sentencias: Código: typedef int * pint; Lo cual, a mi entender, no tiene ningún sentido, pues declara el alias como un puntero... no le veo la lógica, lo que se pretende hacer con eso. Y más aun, usando "pint" como la llamada a una función :-\ En fin, gracias por la atención... Saludos =) Título: Re: [C]Duda, typedef. Publicado por: Og. en 15 Agosto 2010, 06:47 am Has visto esto?
Código Lo que hace es que te imprimirá un 2 osea la parte entera de 5/2. Es igual si haces: Código
Ahora imagina que quieres decirle a tu programa que le estas dando un puntero a un entero. Harías esto: Código
ó Código
Saludos! Título: Re: [C]Duda, typedef. Publicado por: Binary_Death en 15 Agosto 2010, 07:42 am En la estructura cast... transformamos los dos valores a int, creo recordar.
Entonces... en el caso del puntero, es lo mismo? Pero, dónde se define el puntero? Código: (int*)0x0001; Creamos un puntero a un entero, y ese puntero apunta a la direccion 0x0001, pero donde esta el puntero? :xD Es decir... por lo que se ahora, un puntero de declara y define así: Código: int *p = 0x0001; Y con eso habré creado un puntero a un entero que apunte a la celda de memoria 0x0001... sin embargo, no entiendo la estructura que me planteas :-\ Con int ya decimos que apunta a un entero, entonces, por que el cast? Gracias por ayudar Og. ^^ EDITO: Pongo algo que hice con lo que me dijiste: Código: #include <stdio.h> Pero sigo sin entender, si con "int *p" ya decimos que direcciona un entero, para que el cast :xD |