Escolar Documentos
Profissional Documentos
Cultura Documentos
Literais e constantes
() Elementos de programao em C 1 / 35
Sumrio
1 Literais inteiros
2 Literais reais
3 Literais caracteres
5 Literais compostos
6 Enumeraes
7 Variveis constantes
8 () Elementos de programao em C 2 / 35
Literais inteiros
Literais inteiros
() Elementos de programao em C 3 / 35
Literais inteiros
Literais inteiros
Exemplo
Literal inteiro Valor decimal
-12 12
354 354
-012 10 = (1 81 + 2 80 )
0354 236 = 3 82 + 5 81 + 4 80
-0x12 18 = (1 161 + 2 160 )
() Elementos de programao em C 3 / 35
Literais inteiros
Sufixos
u ou U Literal do tipo unsigned int.
l ou L Literal do tipo long int.
ll ou LL Literal do tipo long long int.
() Elementos de programao em C 4 / 35
Literais inteiros
Sufixos
u ou U Literal do tipo unsigned int.
l ou L Literal do tipo long int.
ll ou LL Literal do tipo long long int.
Exemplo
12u Tipo unsigned int; representa o valor 12.
3Ul Tipo unsigned long int; representa o valor 3.
0x45LL Tipo long long int; representa o valor 69.
071ull Tipo unsigned long long int; representa o valor 57.
() Elementos de programao em C 4 / 35
Literais inteiros
() Elementos de programao em C 5 / 35
Literais inteiros
Exemplo
Considerando a representao de negativos em complemento-2, os
tamanhos de 32 bits para os tipos int e long int e de 64 bits para o tipo
long long int, determine o tipo dos seguintes literais:
() Elementos de programao em C 6 / 35
Literais inteiros
Exemplo
Considerando a representao de negativos em complemento-2, os
tamanhos de 32 bits para os tipos int e long int e de 64 bits para o tipo
long long int, determine o tipo dos seguintes literais:
() Elementos de programao em C 6 / 35
Literais inteiros
Exemplo
Considerando a representao de negativos em complemento-2, os
tamanhos de 32 bits para os tipos int e long int e de 64 bits para o tipo
long long int, determine o tipo dos seguintes literais:
() Elementos de programao em C 6 / 35
Literais inteiros
Exemplo
Considerando a representao de negativos em complemento-2, os
tamanhos de 32 bits para os tipos int e long int e de 64 bits para o tipo
long long int, determine o tipo dos seguintes literais:
() Elementos de programao em C 6 / 35
Literais inteiros
Exemplo
Considerando a representao de negativos em complemento-2, os
tamanhos de 32 bits para os tipos int e long int e de 64 bits para o tipo
long long int, determine o tipo dos seguintes literais:
() Elementos de programao em C 6 / 35
Literais inteiros
Exemplo
Considerando a representao de negativos em complemento-2, os
tamanhos de 32 bits para os tipos int e long int e de 64 bits para o tipo
long long int, determine o tipo dos seguintes literais:
() Elementos de programao em C 6 / 35
Literais reais
Literais reais
() Elementos de programao em C 7 / 35
Literais reais Notao cientfica decimal
hSignificandoihE ihExpoentei
O valor decimal dado por
hSignificandoi 10hExpoentei
() Elementos de programao em C 8 / 35
Literais reais Notao cientfica decimal
hSignificandoihE ihExpoentei
O valor decimal dado por
hSignificandoi 10hExpoentei
Exemplo
2.3E1 = 2, 3 101 = 23, 0
34e-2 = 34 102 = 0, 34
.126E2 = 0, 126 102 = 12, 6
() Elementos de programao em C 8 / 35
Literais reais Notao cientfica hexadecimal
hPrefixo-hexihSignificando-hexihPihExpoentei
O valor decimal dado por
() Elementos de programao em C 9 / 35
Literais reais Notao cientfica hexadecimal
Exemplo
Literais reais
hexadecimais Valor representado
0x1Ap2 104, 0 = (1 161 + 10 160 ) 22
0Xd0P-1 104, 0 = (13 161 + 0 160 ) 21
0x5.2p-2 1, 28125 = (5 161 + 2 161 ) 22
0X0.29P3 1, 28125 = (0 160 + 2 161 + 9 162 ) 23
() Elementos de programao em C 10 / 35
Literais reais Tipo dos literais reais
Exemplo
Literal Tipo
98E-1 double
98E-1F float
0.2L long double
() Elementos de programao em C 11 / 35
Literais caracteres
Literais caracteres
() Elementos de programao em C 12 / 35
Literais caracteres
Literais caracteres
() Elementos de programao em C 13 / 35
Literais caracteres
Literais caracteres
Resposta: a 97
() Elementos de programao em C 13 / 35
Literais caracteres
Caracteres especiais
() Elementos de programao em C 14 / 35
Literais caracteres Representaes alternativas
Os caracteres podem ser expressos como \ddd, onde ddd so dgitos octais
representando um valor do tipo unsigned char.
Exemplo
\153 corresponde ao caractere k
\046 corresponde ao caractere &
\12 corresponde ao caractere LF (nova linha)
() Elementos de programao em C 15 / 35
Literais caracteres Representaes alternativas
() Elementos de programao em C 16 / 35
Literais caracteres Representaes alternativas
Exemplo
\u0024 corresponde ao caractere $
\u0040 corresponde ao caractere @
\u0060 corresponde ao caractere
() Elementos de programao em C 17 / 35
Literais caracteres Representaes alternativas
() Elementos de programao em C 18 / 35
Literais caracteres Representaes alternativas
Exemplo
O literal L\x456 representa corretamente o caractere estendido cujo
cdigo decimal 1.110.
A representao grfica desse caractere depende da localizao em vigor no
ambiente de execuo.
() Elementos de programao em C 19 / 35
Literais caracteres Tipo dos literais caracteres
() Elementos de programao em C 20 / 35
Literais caracteres Tipo dos literais caracteres
() Elementos de programao em C 20 / 35
Literais cadeia de caracteres
() Elementos de programao em C 21 / 35
Literais cadeia de caracteres
() Elementos de programao em C 22 / 35
Literais cadeia de caracteres
() Elementos de programao em C 22 / 35
Literais cadeia de caracteres
() Elementos de programao em C 24 / 35
Literais compostos
Literais compostos
() Elementos de programao em C 25 / 35
Literais compostos
Literais compostos
Exemplo
(struct r_aluno) {"Josefa, linda e bela", f, 453}
Cria uma estrutura do tipo struct r_aluno atribuindo ao seu pri-
meiro componente a cadeia Josefa, linda e bela; ao segundo, o
caractere f; e ao terceiro, o inteiro 453.
(int){5712}
Cria um objeto do tipo int e o inicia com o valor 5.712.
(char []) {"E o anjo torna: - A Morte sou!"}
Cria um vetor de caracteres iniciando-o com os caracteres da cadeia
E o anjo torna: A Morte sou!.
() Elementos de programao em C 26 / 35
Enumeraes
Enumeraes
() Elementos de programao em C 27 / 35
Enumeraes
Enumeraes
() Elementos de programao em C 28 / 35
Enumeraes
Enumeraes
Exemplo
As seguintes enumeraes so vlidas:
enum {zero, um, dois, tres, quatro, cinco}
enum {pre, nor = 4, reg = 4, sup, exc}
enum naipe {ouros = 1, copas, paus, espadas}
() Elementos de programao em C 28 / 35
Enumeraes
() Elementos de programao em C 29 / 35
Enumeraes
Exemplo
A declarao enum naipe carta; declara a varivel carta como do tipo
enumerado enum naipe.
() Elementos de programao em C 29 / 35
Variveis constantes
Variveis constantes
modificado.
Na ilustrao acima, as constantes per e sal no possuem valor de
iniciao. Assumem um valor indefinido ou o zero dependendo do contexto
em que so declaradas.
() Elementos de programao em C 30 / 35
Variveis constantes
Variveis constantes
modificado.
Na ilustrao acima, as constantes per e sal no possuem valor de
iniciao. Assumem um valor indefinido ou o zero dependendo do contexto
em que so declaradas.
Observao!
As variveis qualificadas como const no so expresses constantes.
() Elementos de programao em C 30 / 35
Macros
Macros
() Elementos de programao em C 31 / 35
Macros
Macros
() Elementos de programao em C 32 / 35
Macros
Macros
() Elementos de programao em C 32 / 35
Macros
Macros
() Elementos de programao em C 32 / 35
Literais boolianos
Literais boolianos
# define true 1
# define false 0
() Elementos de programao em C 33 / 35
Rtulos
Rtulos
Exemplo
# include < stdio .h >
int main ( void ) {
int a , b = 2;
rot1 : printf (" Digite um inteiro : ");
scanf ("% d " , & a );
rot2 :
rot3 :
if ( a > b ) {
printf ("% d > " , a ); rot4 : printf ("% d \ n " , b );
}
return 0;
}
() Elementos de programao em C 34 / 35
Bibliografia
Bibliografia
ISO/IEC
C Programming Language Standard
ISO/IEC 9899:2011, International Organization for Standardization;
International Electrotechnical Commission, 3rd edition, WG14/N1570
Committee final draft, abril de 2011.
Francisco A. C. Pinheiro
Elementos de programao em C
Bookman, Porto Alegre, 2012.
www.bookman.com.br, www.facp.pro.br/livroc
() Elementos de programao em C 35 / 35