Conjunto ou cadeia de caracteres são chamados de strings em C. Não existe um tipo de dado string em C. As strings em C são vetores do tipo char que termina com o caracter '\0'. As strings possuem tamanho determinado e podem armazenar quaisquer caracter.
Diferente de declarar uma variável do tipo char (para apenas um caracter) a string é uma cadeia de caracteres, ou seja, pode guardar quantos caracteres forem determinados.
DECLARAÇÃO
char frase[50];
char nome[20];
Veja a imagem:

O problema das strings é o seu consumo de recursos (memória). Se observarmos a string que acabamos de criar, ela contém 50 posições, mas só podemos digitar até 49 caracteres. Isso porque toda string deve ter um caracter terminal, indicado pelo NULL (nulo) ou '/0'. Esse '/0' indica o final da string. Para literais string, o próprio compilador coloca o terminador '/0'.
LEITURA
Para ler uma string, podemos usar o scanf(), mas usaremos a função gets().
Com scanf():
puts("Digite um nome: ");
scanf("%s", nome);
Com gets():
puts("Digite um nome: ");
gets(nome);

EXIBIÇÃO
Você pode usar o puts(), entretanto ele só serve para a exibição de uma string. Para exibir o conteúdo de uma ou mais string, podemos usar também o printf().
printf("%s\n", nome);
Veja o exemplo:
#include “stdio.h”
#include “stdlib.h”
int main(){
char palavra[50] = "Programa Basico de Strings";
char nome[20];
printf ("%s\n", palavra);
puts("Digite um nome: ");
gets(nome);
printf("Ola %s\n", nome);
system("pause");
return 0;
}
PASSAGEM DE PARÂMETROS
A passagem de parâmetros é como nos vetores, ou seja, por referência, pois strings são vetores de caracteres.
Vejam no exemplo a seguir. Todos os dois protótipos são válidos:
int func(char str[]);
int func(char *str);
A biblioteca string
A biblioteca padrão string da linguagem C contém várias funções de manipulação de strings. Para usar essas funções, inclua a biblioteca string.h:
#include "string.h"
LISTA DE FUNÇÕES

A palavra reservada const impede que a string seja alterada na função. Pois, como você já sabe, toda vez que passamos um vetor ou string para dentro de uma função, a passagem de parâmetros sempre será por referência, ou seja, precisaremos de um ponteiro na função para manipular ou usar o vetor ou string.
Agora faça os exercícios da aula 09 - II.
Ir para a próxima aula.
Retornar ao índice do curso.
Nenhum comentário:
Postar um comentário