[Prévia] [Próxima] [Prévia por assunto] [Próxima por assunto]
[Índice cronológico] [Índice de assunto]

Inteiros de 64 bits em C



Olá,

Hoje durante o plantão eu expliquei a alguns de vocês como fazer
para utilizar variáveis que armazenam inteiros de tamanho 64 bits em
C. Porém, gostaria de fazer uma errata: na hora de imprimir o valor
da variável, deve-se usar "%lld" ao invés de "%ld" como argumento
para a função printf. Portanto, para utilizar inteiros de 64 bits
deve-se fazer:

/* Declaração da variável, que terá 64 bits */
long long int nome_da_variavel;

/* Impressão do conteúdo da variável */
printf("%lld", nome_da_variavel);

Um programinha de teste seria:

#include <stdio.h>

int main()
{
    long long int numero;
    numero = 999999999999;
    printf("Valor da variavel: %lld\n", numero);
    return 0;
}

Que imprimiria:
Valor da variavel: 999999999999
na tela.

Vale lembrar que os inteiros de 64 bits não estão de acordo com o
padrão ANSI do C, eles são suportados apenas pelo gcc e talvez algum
outro compilador. Portanto, se você deseja que seu programa seja
"portável", isto é, compilável em diferentes plataformas, é bom
seguir o padrão ANSI.

Até mais,

Daniel