Introdução a Manipulação de Strings em C

String é uma das mais úteis e importantes formas de dados em C e é usada para armazenar e manipular textos como palavras, nomes e sentenças
Em C, string é um vetor unidimensional do tipo char, terminada pelo caractere null (‘\0’)
Cada caractere de uma string pode ser acessado individualmente, o que proporciona uma grande flexibilidade aos programas que processam texto
O tipo char deve ser usado antes do nome dado para a variável string
Após o nome da variável string declara-se o tamanho da string entre colchetes

Por exemplo:
char nome[50];

Para ler uma string podemos fazer uso da função scanf(“%s”,&string)
Porém essa função quando encontra o caractere “branco ou espaço” encerra a leitura
Portanto muitas vezes não é a função ideal para leitura de strings

Normalmente usa-se para leitura de strings a função gets()
Essa faz a leitura de caracteres quaisquer até que seja digitado [enter]

Sintaxe:
gets(variável_string);


Exemplo:
#include <stdio.h>
#include <conio.h>

void main()
{
char nome[50];
printf("Entre com um nome: ");
gets(nome);
printf("O nome que voce digitou foi %s",nome);
getch();
}

Inicializando Strings

Uma string pode ser inicializada no momento em que é declarada

Exemplo:
char nome[] = “Marta”;

Acessando Posições Individuais de uma String

Muitas vezes é necessário manipular caracteres individuais em uma string.
A linguagem C possui uma forma toda especial de permitir tal operação, através do uso de colchetes ( [ ] ) logo após o nome da variável do tipo string, e o número do caractere que se deseja manipular entre os colchetes.

A primeira posição de uma string em C é acessada pelo índice 0, a segunda pelo índice 1, e assim por diante
Exemplo:


Exercício:
Construa um programa para ler uma string que represente uma data no seguinte formato: dd/mm/aaaa. Após lida a string, escreva o dia, mês e ano (em números) da data entrada pelo usuário.

Solução:
#include <stdio.h>
#include <conio.h>
#include <string.h>

void main()
{
char data[9];
printf("Entre com uma data no formato dd/mm/aaaa: ");
gets(data);
printf("\nO dia e %c%c",data[0],data[1]);
printf("\nO mes e %c%c",data[3],data[4]);
printf("\nO ano e %c%c%c%c",data[6],data[7],
                                   data[8],data[9]);
getch();
}



































0 comentários:

Postar um comentário

 
Design by Wordpress Theme | Bloggerized by Free Blogger Templates | JCPenney Coupons