SEMINARIO STRING AEDS
Por: renatoguiducci • 18/6/2015 • Seminário • 551 Palavras (3 Páginas) • 225 Visualizações
STRING
String é um vetor de caracteres com um delimitador que indica o final da string: \0.
As strings podem ser diferenciadas dos caracteres, porquê as strings aparecem dentro de aspas duplas, e os caracteres dentro de aspas simples.
O caractere delimitador de strings: \0
Esse caractere é o 0 do código ASCII e é o delimitador de final de string.
Ou seja, ele representa o fim de uma string.
Decraração e inicialização de strings em C:
Declarar string em C,e o mesmo modo de declarar um vetor de variáveis do tipo char.
Utiliza – se a sintaxe:
char nome_da_string[tamanho];
Porém o caractere delimitador - \0 - também fará parte da string.
Ou seja, ele conta no número de caracteres, no tamanho da String.
Por exemplo,para declarar uma string que armazenará “Aeds 1” terá de ser feito:
char curso_de[7]
6 para nossa frase mais 1 para o \0.
Pode também inicializar as strings de outras maneiras,como por exemplo caractere por caractere onde,o C coloca o delimitador de string \0 na última posição:
char curso[7] = {‘A’, ‘ ‘, ‘e’, ‘d’, ‘s’, ‘1’};
Lendo e Escrevendo Strings em C:
%s
Usamos %d para representar números inteiros, %f para números decimais e %c para caracteres.Para strings, usa - se o %s.
lendo strings com a função scanf():
Para receber uma string do usuário através da função scanf(), não é necessário colocar o operador &, pois o nome da string em si já é um endereço de memória.
A sintaxe para receber uma string por meio da scanf() é:
scanf(“%s”, nome_da_string);
Porém,essa função possui um problema, ela pega tudo até encontrar um espaço em branco, caractere new line \n, tab ou ENTER.Para corrigir isso, o C tem uma função especial e bem mais simples para receber strings do usuário, a função gets().
A função gets():
Essa função pega tudo até aparecer uma new line \n, inclusive nada.gets vem de get string,para usar a função basta passar uma string como argumento.
A sintaxe é: gets( nome_da_string );
A função fflush(stdin) ou __fpurge(stdin):
Esta função é utilizada para apagar o Buffer, para que a função gets()não pegue o que estiver armazenadono buffer e armazene na string.Sua sintaxe é: fflush(stdin);
As funções puts() e printf():
puts() (de put string),sua sintaxe é: puts( nome_da_string_a_ser_exibida);
para exibir uma string "str" com o printf, utiliza – se a sintaxe: printf("Minha string: %s", str);
A função fgets():
A função gets() possui um problema de tamanho da string,pois podemos digitar mais caracteres do que a string alocou de memória, e "quebrar" o programa por conta de um overflow.Uma solução para isso é usar a função fget().
Esta função recebe três dados: a string que vai armazenar o que vai ser digitado, o tamanho da string e de onde vai ler.Sua sintaxe é: fgets(str, 256, stdin);
Funções de exame e de manipulação da biblioteca string.h:
A função strcpy : Copia o conteúdo da string de origem para a string de destino.Sua sintaxe:
strcpy(string_destino,string_origem);
Exemplo de código:
#include
#include
#include
int main() {
char palav_orig[10];
char palav_cop[10];
printf (“Digite uma palavra:”);
gets (palav_orig);
strcpy(palav_cop, palav_orig);
printf(“Palavra original ”);
puts(palav_orig);
printf(“Palavra copia ”);
puts(palav_cop);
getch();
}
A função strlen: Essa função retorna o tamanho, em caracteres, de uma string dada.Sua sintaxe é:
strlen(string_nome);
Exemplo de código:
#include
#include
#include
int main()
{
char str_p[10];
printf("Digite uma palavra: ");
scanf(" %s", str_p);
strlen(str_p);
printf("\nA palavra digitada tem %d caracteres. \n", strlen(str_p));
getch();
}
...