Linguagem C - Cadeia de caracteres (string)

Maio 2017


O que é uma cadeia de caracteres (ou string)?


Uma cadeia de caracteres (string em inglês) é uma sequência de caracteres, ou seja, um conjunto de símbolos, que fazem parte do conjunto de caracteres, definido pelo código ASCII.

Em linguagem C, uma cadeia de caracteres é uma tabela, com vários dados do tipo char, cujo último elemento é o caractere nulo '\0', ou seja, o primeiro caractere do código ASCII (cujo valor é 0).

Este caractere é um caractere de controle (ou seja, não exibível) que indica o fim de uma cadeia de caracteres. Assim, uma cadeia composta de n elementos será, na realidade, uma tabela de n +1 elementos do tipo char.

Podemos, por exemplo, representar a string "Bom dia" da seguinte maneira:

Bomdia\0

Criar uma cadeia de caracteres


Para definir uma string em C, basta definir uma tabela de caracteres. O número máximo de caracteres que comportará a cadeia será igual ao número de elementos da tabela, menos um (reservado para o caractere do final da cadeia).

char Nome_da_tabela[Número_de_elementos]



  • O número de elementos da tabela define o tamanho máximo da cadeia, porém, podemos usar parte deste espaço, inserindo o caractere final da cadeia no local desejado, na tabela.


Ao definir a tabela, da seguinte maneira, você destacarà o número máximo de caracteres da cadeia:
char Nome_da_tabela[Número_de_elementos + 1]


Por exemplo:
 char Cadeia[50 + 1]

Inicializar uma cadeia de caracteres


Como normalmente em linguagem C, você deve inicializar sua string, ou seja, preencher os espaços em branco da tabela, com caracteres, sabendo que ele vai necessariamente conter o caractere final da cadeia '\0'.
Há duas maneiras para fazê-lo:

  • Preencher manualmente a tabela, célula por célula
  • Utilizar funções de manipulação de cadeias de fornecidas nas bibliotecas padrão


Veja um exemplo de inicialização manual de cadeia de caracteres :

#include <stdio.h>

void main(){
 char Cadeia[20+1];

 Cadeia[0]= 'B';

 Cadeia[1]= 'o';

 Cadeia[2]= 'n';

 Cadeia[3]= 'j';

 Cadeia[4]= 'o';

 Cadeia[5]= 'u';

 Cadeia[6]= 'r';

 Cadeia[7]= '\0';

}


Veja outra maneira (mais simples) de inicializar uma cadeia de caracteres:

#include <stdio.h>

void main(){
 char Cadeia[20+1]={ 'B', 'o', 'n', 'j', 'o', 'u', 'r', '\0' };

}

As funções de manipulação das cadeias de caracteres


Muitas funções de manipulação de strings são fornecidos diretamente. Estas funções estão no cabeçalho do arquivo <string.h> e é a razão para adicionarmos a seguinte linha no início do programa:

#include <string.h>


O arquivo <string.h> contém os protótipos de inumeras funções para simplificar o uso e a manipulação de strings (cerca de quarenta).

Artigo [www.commentcamarche.net/contents/c/cstring.php3 original] publicado por CommentCaMarche

Tradução feita por Lucia Maurity y Nouira

Veja também

Publicado por pintuda. Última modificação: 24 de outubro de 2011 às 10:10 por pintuda.
Este documento, intitulado 'Linguagem C - Cadeia de caracteres (string) ', está disponível sob a licença Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com base nas condições estipuladas pela licença. Não se esqueça de creditar o CCM (br.ccm.net) ao utilizar este artigo.