Linguagem C - Cadeia de caracteres (string)

Dezembro 2016


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 :
Este documento, intitulado « Linguagem C - Cadeia de caracteres (string)  »a partir de CCM (br.ccm.net) está disponibilizado sob a licença Creative Commons. Você pode copiar, modificar cópias desta página, nas condições estipuladas pela licença, como esta nota aparece claramente.