Escolar Documentos
Profissional Documentos
Cultura Documentos
umento
1.0 Os indetificadores
1.1 Tipos de dados
1.1 Modificadores de Tipo
1.1 Declarao de variveis
1.1 Variveis globais:
1.1 Variveis locais:
Os indetificadores
A linguagem C define identificadores como sendo nomes usados para se fazer
referncia a entidades do programa (variveis, funes, rtulos, etc.) definidas pelo
programador. Em C, um identificador composto de um ou mais caracteres, sendo
que, para identificadores internos, os 31 primeiros so significativos. O primeiro
caractere deve ser uma letra ou um sublinha (_) e os caracteres subseqentes
devem ser letras, nmeros ou sublinhas. Eis aqui alguns exemplos de
identificadores corretos e incorretos:
Corretos
Incorretos descrio
Um identificador deve sempre comear com
cont
1cont
uma letra do alfabeto, nunca por um nmero.
Um identificador no pode conter
valor23
al
acentos (, ^, ~, )
Um identificador no pode conter
totalGeral valor-total
simbolos (-)
Isto quer dizer que se duas variveis tm em comum os 31 primeiros caracteres e
diferem apenas a partir do trigsimo segundo, o compilador C no ser capaz de
distingui-Ias. Por exemplo, esses dois identificadores so iguais:
isto_e_um_exemplo_de_um_nome_longo
isto_e_um_exemplo_de_um_nome_longo_tambem
Tipos de dados
Existem cinco tipos primitivos de dados em C suportados no mikroC: caractere,
inteiro, ponto flutuante (float e double) e sem valor. As palavras reservadas usadas
para declarar variveis desse tipo so char, int, float/double e void,
respectivamente. A tabela abaixo representa o valor e a escala de cada tipo de
dado em C.
TIPO
TAMANHO
INTERVALO
EM BITS
char
int
float
32
void
0 a 255
0 a 255
3.4E-38 a
3.4E+38
nenhum valor
Modificadores de Tipo
Podemos utilizar comandos especiais do C para obter outros tipos de dados. Esses
comandos especiais so chamados de modificadores de tipo e so os seguintes:
signed, unsigned, short, e long.
O modificador de tipo signed pode ser utilizado para modificar um tipo base de
dados para que ele possa representar um nmero positivo ou negativo;
O modificador short utilizado para definir uma varivel com tamanho menor que
o tipo modificado, ou seja, uma verso reduzida do tipo especificado.
O modificador long utilizado para ampliar a magnitude de representao do tipo
especificado.
TIPO TAMANHO
RANGER
(unsigned )
8 -bit
char
signed char 8 -bit
(signed)
8 - bit
short (int)
unsigned
8 - bit
short (int)
(signed) int 16 - bit
unsigned
16 - bit
int
(signed)
32 - bit
long int
unsigned
32 - bit
long int
0 255
-128 +127
-128 +127
0 255
-32768 32767
0 65535
-2147483648
2147483647
0 4294967295
+/- 1.17549435082E-38
+/6.80564774407E38
+/1.17549435082Edouble
32 - bit
38 +/6.80564774407E38
+/1.17549435082Elong double 32 - bit
38 +/6.80564774407E38
void
nulo
sem valor
Obs: tipos de float, double e long double so considerados do mesmo tipo
no mikroC.
float
32 - bit
Declarao de variveis
Definir uma varivel cri-la na memria (aloc-la), dar a ela um nome e
especificar o tipo de dado que nela vai armazenar.
Varivel, do ponto de vista da rea de programao, uma regio de memria
previamente identicada que tem por finalidade armazenar os dados ou informaes
de um programa por um determinado espao de tempo. Uma varivel llimita-se a
armazenar apenas um valor por vez.
Sintaxe para criao de uma varivel em C;
<tipo> nome_da_variavel;
O tipo deve ser um tipo de dado vlido em C tais como: char, int, float, com ou
sem seus modificadores, unsigned, signed, short e long. E nome_da_variavel o
nome da varivel adotada pelo programador.
int soma ;
unsigned char i,j,k ;
float salrio;
unsigned int idade;
short int y;
long caminho, estado;
unsigned valor;
Variveis globais:
No corpo principal do programa: variveis declaradas no corpo principal do programa
so variveis globais que podem se acessadas por qualquer funo do programa. Essas
variveis esto fora de qualquer funo do programa, inclusive a funo main().
Exemplo:
int contador;
char a;
void main()
{
contador = contador + 10
}
Repare que as variveis "contador" e "a" forma definidas fora de qualquer funo do
programa, essas variveis sero tratadas como variveis globais e seus dados podero
ser manipulados por qualquer funo do programa;
Vamos apresentar mais um exemplo de programa utilizando as variveis globais:
int contador;
como inteiro
char a;
char
"a" como
void subrotina ()
//funo de sub-rotina qualquer do
programa
{
contador = contador - 20;
a = 100;
}
void main()
//funo principal do programa
{
contador = contador + 10;
a = 55;
}
Repare no programa exemplo acima que as variveis "contador" e "a" esto sendo
manipuladas no corpo da funo main() e na funo subrotina(). Este tipo de
manipulao de variveis somente possvel se declararmos como sendo do tipo
GLOBAIS, ou seja, necessriamente devemos defini-las no corpo do programa (fora de
qualquer funo do programa, inslusive a funo main()).
voltar para o topo da pgina
Variveis locais:
Ao contrrio das variveis globais, uma varivel local somente existe dentro da funo
em que foi declarada. Isto significa que uma varivel local somente existe enquanto a
funo esta sendo executada. No momento que ocorre o retorno da funo, as variveis
locais so descartadas;
Acompanhe o exemplo abaixo:
void main()
//funo principal do programa
{
int contador;
//define a varivel local "contador" como int
contador = contador + 10
}
Repare que a varivel "contador" foi declarada (criada) dentro da funo main(), as
varivel locais somente ter validade dentro da funo que a declarou, neste caso,
"contador" somente poder ser manipulada no programa dentro da funo main().
void subrotina ()
programa
{
int tempo;
tempo = tempo * 2;
}
void main()
//funo principal do programa
{
int tempo;
tempo = tempo / 2;
}
Repare no programa exemplo acima que temos duas funes, a funo main() e a
funo subrotina(). Dentro de cada uma dessas funes foram criada uma varivel
chamada "tempo" do tipo int, essas variveis so locais e somente tem validade dentro
da funo que a declarou, ou seja, a varivel "tempo" da funo subrotina() NO tem
nenhuma ligao com a varivel "tempo" da funo main(), pois so variveis locais;
Se por ventura cometermos o seguinte erro abaixo, acompanhe:
void subrotina ()
programa
{
tempo = tempo * 2;
}
void main()
{
int tempo;
}
Repare que a varivel "tempo" foi declarada unicamente dentro da funo main() e que
seus dados esto sendo manipuladas por outra funo chamada subrotina(). Ao
compilarmos este programa, certamente o compilador apresentar um erro de
compilao nos informando que a varivel "tempo" no foi definida. Esse um erro
comum que muitos programadores inexperientes cometem na linguagem C, pois
esquecem que uma varivel local somente tem validade dentro da funo que a
declarou.
Podemos declarar variveis como parmetros formais de uma funo, que so tambm
tratadas como variveis locais. Iremos estudar esse tipo de varivel quando estivermos
falando de funes em nosso curso;
voltar para o topo da pgina