Fundamentos da Linguagem C

Voltar para o índice



./03/slides/11-sub-pont

# Fundamentos da Linguagem C
# Aula 3 - Variáveis e ponteiros

## Aritmética de ponteiros

+ Subtração de ponteiros do mesmo tipo

Resulta no tamanho em bytes do tipo do dado levando em
conta quem aponta para o endereço mais alto.

Por exemplo:

: int i1 = 10, *pi1 = &i1;
: int i2 = 10, *pi2 = &i2;

: printf("pi1 = %p\\n", pi1);
: printf("pi2 = %p\\n", pi2);
: printf("pi1 - pi2 = %d\\n", pi1 - pi2);
: printf("pi2 - pi1 = %d\\n", pi2 - pi1);

Resulta em...

: pi1 = 0x7fff49a9bffc
: pi2 = 0x7fff49a9bfec
: pi1 - pi2 = 4
: pi2 - pi1 = -4