Archive

Posts Tagged ‘tipos de datos’

Construyendo tipos de datos de C con ctypes

Seguimos con estos post dedicados a python y su libreria ctypes. En este caso voy a dar algunos ejemplos para saber que tipo de datos usar en cada variable que criemos.

Hago esto… porque yo como muchos reversers estoy acostumbrado a ver todo como BYTE, WORD, DWORD. Ya cuando me agregan palabras como punteros o integer, ya me rompe la paciencia 😛 por eso vamos a ver que tamaño le da a cada cosa nuestra querida librería de python.

Esta es la lista de estructura de datos que nos provee el librito “Gray Hat Python“:

C Type Python Type ctypes Type
char 1-character string c_char
wchar_t 1-character Unicode string c_wchar
char int/long c_byte
char int/long c_ubyte
short int/long c_short
unsigned short int/long c_ushort
int int/long c_int
unsigned int int/long c_uint
long int/long c_long
unsigned long int/long c_ulong
long long int/long c_longlong
unsigned long long int/long c_ulonglong
float float c_float
double float c_double
char * (NULL terminated) string or none c_char_p
wchar_t * (NULL terminated) unicode or none c_wchar_p
void * int/long or none c_void_p

Read more…

Advertisements