Manipulando Strings em C
Caracteres
INF1004 e INF1005 – Programação 1
Matéria P3
Pontifícia Universidade Católica
Departamento de Informática
String - Tópicos
■
■
■
■
■
Caracteres
Cadeias de caracteres
Leitura de caracteres e cadeias de caracteres
Funções que manipulam cadeias de caracteres
Funções da biblioteca string.h
Caracteres
■
tipo char:
– tamanho de char = 1 byte = 8 bits = 256 valores distintos
– tabela de códigos:
» define correspondência entre caracteres e códigos numéricos
» exemplo: ASCII
» alguns alfabetos precisam de maior representatividade
• alfabeto chinês tem mais de 256 caracteres
• no nosso caso, cada letra do alfabeto tem uma representação numérica diferente.
Códigos ASCII de alguns caracteres (sp representa espaço)
0
1
30
Exemplo:
82
105
110
R
i
o
32
2
3
4
5
6
7
8
9
sp
!
"
#
$
%
&
'
40
(
)
*
+
,
-
.
/
0
1
50
2
3
4
5
6
7
8
9
:
;
60
<
=
>
?
@
A
B
C
D
E
70
F
G
H
I
J
K
L
M
N
O
80
P
Q
R
S
T
U
V
W
X
Y
90
Z
[
\
]
^
_
`
a
b
c
100
d
e
f
g
h
i
j
k
l
m
110
n
o
p
q
r
S
t
u
v
w
120
x
y
z
{
|
}
~
100
101
d
e
32
74
97
110
101
105
114
111
J
a
n
e
i
r
o
Códigos ASCII de alguns caracteres de controle
0
nul null: nulo
7
bel bell: campainha
8
bs
backspace: volta e apaga um caractere
9
ht
tab: tabulação horizontal
10
nl
newline ou line feed: muda de linha
13
cr
carriage return: volta ao início da linha
127
del delete: apaga um caractere
Caracteres
■
Constante de caractere:
– caractere envolvido com aspas simples
– exemplo:
» 'a' representa uma constante de caractere
» 'a' resulta no valor numérico associado ao caractere a char c = 'a'; printf("%d %c\n", c, c);
• printf imprime o conteúdo da variável c usando dois formatos:
• com o formato para inteiro, %d, imprime 97
• com o formato de caractere, %c, imprime a (código 97 em ASCII)
Função para converter minúsculas em maiúsculas char