segunda-feira, 4 de março de 2013

Tutorial C - Parte 07 – Variáveis



Em um programa, existe a necessidade de se guardar valores na memória, e isso é feito através de variáveis, que podem ser definidas simplificadamente como nomes que se referem a lugares na memória onde são guardados valores.

Em C, para utilizar uma variável, ela deve ser primeiramente declarada, ou seja, devemos requisitar o espaço necessário para essa variável. Após reservar um espaço na memória, o computador irá associar a ele o nome da variável. Se você não declarar uma variável e tentar utilizá-la, o compilador irá avisá-lo disso e não continuará a compilação.

Declarando variáveis
Genericamente, para declarar uma variável, usamos a seguinte instrução:
tipo_da_variável nome_da_variável;
Por exemplo, para declarar uma variável do tipo int com o nome a, podemos escrever
int a;
É sempre necessário indicar o tipo da variável, pois cada tipo tem um tamanho diferente, ou seja, ocupa mais ou menos espaço na memória do computador. Mais adiante introduziremos os tipos de variável.

Atribuindo valores
Se quisermos associar um valor a uma variável, usamos o operador = (igual):
a = 5;
Nesse caso, estamos pedindo que o computador guarde o valor 5 no espaço alocado à variável a.
É possível também atribuir um valor a uma variável ao mesmo tempo que ela é declarada, o que é chamado de inicializar a variável. Por exemplo:
int a = 5;
É possível também declarar mais de uma variável de um mesmo tipo em uma única instrução, separando os nomes por vírgulas. Também é possível inicializar as variáveis dessa maneira:
int a, b, c, d;
int e = 5, f = 6;
int g, h = 2, i = 7, j;

Exemplo de erro
a = 25;
Mesmo sabendo que é um exemplo de erro, escreva o código acima em um arquivo. c e tente compilar para se familiarizar com as mensagens de erro do compilador, assim você saberá o que fazer quando elas ocorrerem.
No exemplo acima não foi declarada a variável a, ao tentar compilar o compilador informa que o símbolo a não foi definido.

Nomes de variáveis
·       Os nomes de variáveis devem ser únicos: não podemos ter duas variáveis com o mesmo nome!
·         O C, assim como muitas outras linguagens de programação, é sensível à utilização de maiúsculas e minúsculas(case sensitive). Portanto, o código a seguir seria válido e geraria três variáveis diferentes:
int nome;
int NOME;
int Nome;
·         Em nomes de variáveis, podemos usar letras maiúsculas ou minúsculas (de A a Z, sem acentos), números e o caractere sublinhado (_), mas o primeiro caractere deve ser uma letra ou o sublinhado. Algumas palavras não podem ser usadas para nomes de variáveis por serem palavras reservadas (palavras que têm significado especial na linguagem).
·         O padrão C atual especifica que nomes de até 31 caracteres devem ser aceitos. Alguns compiladores podem até aceitar nomes maiores que isso, mas não considere isso uma regra e não use nomes tão longos.

Tipos de variáveis
Até agora você só viu as variáveis do tipo int, que servem para guardar números inteiros. A linguagem C tem 4 tipos fundamentais. São eles:
·         int
·         char
·         float
·         double
O primeiro, int, serve apenas para guardar números inteiros. Por exemplo, 4, 2773 ou -15.Já o segundo, char, serve para guardar um caractere. Além disso, há uma diferença entre o intervalo de dados que cada um pode guardar. O mais comum é que char guarde valores de -128 a 127 e int, em processadores de 32 bits, guarde valores de -2.147.483.648 a 2.147.483.647 (-231 a 231 − 1).
Os outros dois, float e double, servem para guardar números de ponto flutuante, ou seja, números reais, como 3,1415 (pi), -2,3333, 0,00015, 6,02 × 1023. A diferença entre os dois é, além do intervalo de dados, a precisão. Geralmente, o tipo float guarda dados (com sinal positivo ou negativo) de 3,4E-38 a 3,4E+38 (além do zero). Já double costuma suportar números tão pequenos quanto 1,7E-308 e no máximo 1,7E+308.

Modificadores de tipo
Podemos alterar a maneira como os dados são guardados com os modificadores de tipo. Você pode modificar os tipos de duas maneiras.

Tamanho: short e long
Você pode modificar o tamanho de uma variável usando os modificadores de tipo, que são dois: short e long. Note que float e char não podem ser modificados em tamanho.
·   short diminui o espaço necessário para guardar a variável (diminuindo também a gama de valores que esta pode assumir). Só pode ser usado com int.
·        long aumenta o espaço tomado pela variável, e portanto aumenta seu valor máximo e/ou sua precisão. Pode ser usado com int e double.
·    O padrão C de 1999 adicionou um terceiro modificador, suportado pelos compiladores mais recentes, inclusive o gcc: long long, que aumentaria ainda mais a capacidade da variável. Alguns deles suportam esse modificador apenas para o tipo int, e outros suportam também para double.
Uma observação é necessária: segundo o padrão, não existe nenhuma garantia de que uma variável short int é menor que uma variável int, nem que long int é maior que int. Apenas é garantido que int não é maior que long nem menor que short. De fato, nos sistemas x86 de 32 bits (ou seja, a maioria dos computadores pessoais atualmente), o tamanho de int é igual ao de long. Geralmente, int será o tamanho nativo do processador — ou seja, 32 bits num processador de 32 bits, 16 bits num processador de 16 bits etc.

Converter um tipo de variável
A conversão de uma variável consiste em converter o tipo de uma variável em um outro. Imagine que você esteja trabalhando com uma variável do tipo float e por alguma razão queira eliminar os números que estão depois da virgula.
Esta operação pode ser realizada de duas maneiras.


Conversões do tipo implícita: Consiste em uma modificação do tipo de variável que é feita automaticamente pelo compilador.

Ex:
     int x;
     x = 7.123;
Conversões do tipo explícita: Também chamada de operação cast, consiste em forçar a modificaçao do tipo de variável usando o operador cast "( )".
Ex:
    int y;
    y = (int)7.123;
Veja um exemplo da conversão de tipo inteiro em caracteres. Aqui convertemos um numero decimal em um caracte ASCII.

 #include <stdio.h>

  int main(void)
{
   int y = 65;
   char x;

   x = (char) y;
   printf("O numero inteiro: %d \n O caracter: %c \n\n", y, x);
 }


Sinal: signed e unsigned


·        Existe outro tipo de modificador, que define se o número vai ser guardado com sinal ou não. São os modificadores signed e unsigned, suportados pelos tipos inteiros apenas.

·  signed diz que o número deve ser guardado com sinal, ou seja, serão permitidos valores positivos e negativos. Esse é o padrão, portanto esse modificador não é muito usado.

·    unsigned diz que o número deve ser guardado sem sinal. Com isso, o valor máximo da variável aumenta, já que não teremos mais valores negativos. Por exemplo, com uma variável charpodemos guardar valores de -128 a 127, mas com uma variável unsigned char pode guardar valores de 0 a 255.

Para usar esses modificadores, devemos colocá-los antes do nome do tipo da variável, sendo que o modificador de sinal deve vir antes do modificador de tamanho caso ambos sejam usados. Por exemplo:
unsigned char c;
short int valor;
unsigned long int resultado;
long double preco;
Nota: Você pode abreviar short int e long int para simplesmente short e long, respectivamente.



Literais



Em programação, um literal é uma notação que representa um valor constante. Exemplos de literais em C são 415, 19.52, 'C', "João". Esses exemplos representam os quatro tipos de literais em C: literais de inteiros, literais de reais, literais de caracteres e literais de strings. Só com esses exemplos já é possível deduzir como se usam os literais; mas é importante fazer algumas observações:

·  Literais de inteiros podem ser especificados nas bases decimal, octal ou hexadecimal. Se o literal for prefixado com "0x" ou "0X", ele será interpretado como hexadecimal; se o prefixo for apenas "0", será interpretado como octal; ou se não houver prefixo, será interpretado como decimal.

·   Literais de reais podem ser especificados na forma decimal (144.57) ou em notação científica (1.4457e+2). Lembre-se que o separador decimal é o ponto e não a vírgula, como seria usual.

· Literais de caracteres devem vir entre aspas simples (') e conter a representação de apenas um caractere1. Usos válidos seriam: 'c', '\n', '\x1b', '\033'. Se você quiser usar a aspa simples como caractere, preceda-a com uma barra invertida: '\''.

·    Literais de strings devem vir entre aspas duplas ("). Para usar aspas duplas dentro de strings, preceda-as com barra invertida: "Ele disse \"Olá\".". Note que um literal de string adiciona o caractere nulo (\0) ao final da string, pois ele é, em C, a maneira de delimitar o final de uma string.

Notas de rodapé
1.       Na verdade, segundo o padrão C, literais de caracteres podem conter a representação de mais um caractere, mas o uso deles seria para representar números e não seqüências de caracteres; é um aspecto pouco utilizado da linguagem C.


Seja o primeiro a comentar

Postar um comentário

Ouvir a Rádio Boa Vista FM 96,5 de Paracatu Ao Vivo e Online

Ouvir a Rádio Boa Vista FM 96,5 de Paracatu Ao Vivo e Online
Cidade: Paracatu/MG - Gênero: Popular

Chuck Norris Aprova Tecnosolution!


NOTÍCIAS TI

Ajude a divulgar nosso blog!


Total de visualizações de página

Usuários Online

Usuários online

  ©TECNOSOLUTION - Todos os direitos reservados.

Template by Dicas Blogger | Topo