Algoritmos capitulo7
Algoritmos / Linguagem C – Prof. Dr. Antônio Marcos SELMINI
Capítulo 7
Manipulação de Strings e Caracteres
7.1 Introdução
Como já comentado anteriormente em nosso curso de Algoritmos, a linguagem C não apresenta um tipo “string”. Sabemos também desde o início do nosso curso que uma string nada mais é do que uma cadeia (conjunto) de caracteres. As strings são representadas usando aspas (“”), enquanto que os caracteres são representados usando aspas simples. Dessa forma temos:
Exemplos de strings:
“Maria”
“São Paulo”
“Faculdade de Informática”
Exemplos de caracteres:
‘q’
‘s’;
Cada caractere em C ocupa um byte na memória. Dessa forma, ‘C’ é o caractere C (ocupa apenas 1 byte na memória) enquanto que, “C” é um vetor de caracteres (ocupa 2 bytes na memória onde 1 byte é reservado para o finalizador de strings).
Para manipularmos uma cadeia de caracteres em C devemos trabalhar com vetores unidimensionais, ou seja, uma string em C é uma cadeia de caracteres armazenadas em um vetor. A utilização mais comum de um array unidimensional em C é na definição de uma string. Portanto, strings são vetores do tipo char. Devemos estar atentos ao fato de que as strings têm como último elemento um
‘\0’, que é adicionado automaticamente ao final da string. Vale reforçar que uma string é um vetor de caracteres, mas o inverso é falso, isto é, um vetor de caracteres pode não ser uma string. A forma geral para declararmos uma string segue o mesmo padrão para a declaração de um array unidimensional: char nome_da_string[tamanho]; onde tamanho representa o número máximo de caracteres que a string irá armazenar. Devemos incluir neste valor o finalizador de strings.
Exemplo de declaração: char nome[20];
No exemplo acima, temos uma variável vetor que armazena no máximo 20 caracteres. Lembre-se que o tamanho da string deve incluir o finalizador de strings (‘\0’). A função do finalizador de strings é única e estritamente para definir quais são as posições preenchidas dentro de vetor de