aula 29

Operador unsigned (número sem sinal)

Bem vindo a aula 29 de nosso curso gratuito de programação com a linguagem C.

Aqui no curso já aprendemos os seguintes operadores que podem ser utilizados no momento da criação de variáveis:

  • short, para reduzir a quantidade de memória de uma variável do tipo int, e
  • long, para aumentar a quantidade de memória de uma variável do tipo int ou double.

Nesta aula vamos conhecer o operador unsigned que pode ser aplicado em variáveis do tipo int, inclusive com os operadores short e long.

Quando criamos uma variável do tipo int, por exemplo, esta variável possui um intervalo de valores que podem ser armazenados na região de memória alocada (separada) para um inteiro. Nas arquiteturas modernas onde um int ocupa 4 bytes de memória esse intervalo vai de -2.147.483.648 até 2.147.483.647.

Perceba que, partindo do valor zero (0), temos parte do intervalo com valores positivos e parte do intervalo com valores negativos.

Quando utilizamos o operador unsigned, assim:

unsigned int valor;

nossa variável valor armazena agora apenas valores positivos, ou seja, toda a região de memória alocada para a variável será utilizada para armazenar um número SEM SINAL, logo, é possível armazenar valores maiores, neste caso entre o intervalo 0 até 4.294.967.295. Para imprimir na tela o valor de uma variável unsigned int o %d deve ser substituído por %u.

Este operador pode ser combinado com o operador short, neste caso uma variável do tipo unsigned short int suporta valores no intervalo de 0 até 65.535 e pode ser impressa na tela com o %hu.

Também pode ser combinado com o operador long. Uma variável do tipo unsigned long int armazena valores no intervalo de 0 até 4.294.967.295 e seu valor pode ser impresso na tela com %lu.


Deixe um comentário

19 − 17 =

Wagner Gaspar

Capixaba de São Gabriel da Palha, Espírito Santo. Bacharel em Ciência da Computação pela Universidade Federal do Amazonas e mestre em informática pela Universidade Federal do Espírito Santo.