strings

9
Programação II Strings Prof. Leonardo Tavares, MSc.

Upload: lzamaro

Post on 14-Nov-2015

214 views

Category:

Documents


0 download

DESCRIPTION

Teoria sobre Strings

TRANSCRIPT

  • Programao II

    Strings

    Prof. Leonardo Tavares, MSc.

  • Strings

    Strings so vetores de caracteres.

    Exemplos:char nome[80]; // Stringfloat pesos[40]; // no String

    muito comum que uma string no ocupe todos oselementos que foram reservado ela. Por isso foiconvencionado que a informao til, isto , oselementos do vetor realmente utilizados devem serseguidos do caracter nulo (\0).Todas as funes da biblioteca padro do C utilizamesta conveno para manipular strings.Strings tambm so chamadas de cadeias decaracteres.

  • Strings

    Declarao de Strings

    A declarao de uma string igual a declarao deum vetor (informa-se tipo, nome e tamanho).Para declarar uma string tambm deve-se lembrarde reservar um elemento para o caracter nulo (\0).

    Por exemplo, para declarar uma string que armazeneuma string de at 80 caracteres:

    char nome[80]; // e o terminador nulo ???char nome[81]; // melhor assim !!!

  • Entrada de Strings

    As funes mais comuns para ler strings do tecladoso scanf e gets.Ambas colocam o terminador nulo na sequncia dastring.

    char nome[50];

    printf("Digite seu nome: ");scanf("%s", nome);

    ou

    printf("Digite seu nome: ");gets(nome);

  • Entrada de Strings

    Detalhes da string de controle da funo scanf.

    char nome[50];printf("Digite seu nome: ");

    scanf("%s", nome);// "%s" interrompe a leitura no 1o. espaco encontrado// se o usuario digitar "ROSI CREIA"// o programa vai armazenar apenas "ROSI"

    scanf("%[^\n]", nome);// "%[^\n]" interrompe a leitura apenas no ENTER// se o usuario digitar "ROSI CREIA"// o programa vai armazenar "ROSI CREIA"

  • Entrada de Strings

    Outros detalhes!A funo gets interrompe a leitura da string apenasno ENTER.s vezes interessante/necessrio fazer a limpeza dobuffer do teclado antes de ler uma nova string. Isto possvel atravs das instrues:

    fflush(stdin);

    ou

    rewind(stdin);

  • Sada de Strings

    As funes mais comuns para mostrar strings na telaso printf e puts.Ambas enviam caracteres para a tela atencontrar o terminador nulo.A vantagem da printf reside no fato de poder utilizaruma string de controle mais elaborada.

    puts(nome);

    printf("%s", nome);

    printf("Nome: %s", nome);

  • Strings

    Strings Constantes

    Uma string constante no pode assumir outro valorno meio da execuo do programa. comum de ser utilizada para armazenar mensagenspr-definidas do programa.Para declarar uma string constante deve-se colocara lista de caracteres entre aspas.Especificar o tamanho da string dispensvel.No necessrio colocar o caracter nulo no final dastring.

    Exemplo:

    char msg[ ] = "Digite sua senha: ";

  • Strings Constantes

    Forma de declarao:

    char txt[ ] = "HELLO";

    significa que...

    txt[0] = H;txt[1] = E;txt[2] = L;txt[3] = L;txt[4] = O;txt[5] = \0;