Calcul de taille entre 2 pointeurs
Bonjour,
j'ai 2 fonctions qui me calculent 2 pointeurs Read et Write :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| /* Return the Read pointeur */
void *
block_list_get_read( struct block_list_head * head )
{
struct block_list_elem * elem;
elem = linked_list_first_as( block_list_elem, head ) + 1;
return (void *)((char *) elem + elem->read);
}
/* Return the Write pointeur */
void *
block_list_get_write( struct block_list_head * head )
{
struct block_list_elem * elem;
elem = linked_list_last_as( block_list_elem, head ) + 1;
return (void *)((char *) elem + elem->write);
} |
j'aimerais calculer la taille entre les 2 pointeurs (Write - Read)
j'ai donc cette fonction :
Code:
1 2 3 4 5 6 7 8 9
| /* Return the size that can be read */
unsigned int
block_list_get_size_read( struct block_list_head * head )
{
if(block_list_get_read(head) < block_list_get_write(head))
return (block_list_get_read(head) - block_list_get_write(head));
else
return 0;
} |
ce qui me donne comme erreur 'void *' : unknown size
c'est a dire que la taille du retour n'est pas connue.
ou serais l'erreur ? merci d'avance car la je bloque