Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Manipulação de Strings Cadeias de caracteres (strings) • Uma cadeia de caracteres ou string é uma sequência de letras e símbolos. Os símbolos podem ser espaços em branco, dígitos e outros tais como pontos de exclamação e interrogação, símbolos matemáticos, etc. • Em C, uma cadeia de caracteres é representada por um vetor de tipo char que termina com o terminada com o caractere ’\0’ que marca o final da cadeia. Declaração de uma string char nome_string [TAMANHO + 1]; Deve-se utilizar uma posição além do tamanho desejado para que possa ser colocado o ’\0’ no final da string quando ela tiver o tamanho máximo. Leitura e escrita de uma string Podemos ler uma string caractere a caractere, como qualquer vetor ler a string inteira, utilizando scanf ("%s", string); ou scanf("\n%[^\n]", string); ou scanf("%[^\n]", string); printf ("%s", string); Manipulação de strings A biblioteca string.h contem funções para manipulação de strings Algumas das funções da biblioteca são: strlen(s):retorna o tamanho da string s sem contar o caractere ’\0’ strcpy(destino, fonte): copia a string fonte para a string destino strcat(destino, fonte): concatena a string fonte no fim da string destino Manipulação de strings strcmp(str1, str2): compara duas cadeias e caracteres e retorna um valor = 0 se str1 e str2 forem iguais < 0 se str1 for menor que str2 > 0 se str1 for maior que str2 Exemplo 3 #include <string.h> typedef char *string; int strcmp( string s, string t) { int i; unsigned char usi, uti; for (i = 0; s[i] == t[i]; ++i) if (s[i] == '\0') return 0; usi = s[i]; uti = t[i]; return usi - uti; } Manipulação de strings strchr(string,caractere): retorna um ponteiro para a primeira ocorrência de "caractere". Caso "caractere" não seja encontrado, ela retornará um ponteiro para o caractere NULL que marca o final da string. strrev(string): para inverter o conteúdo de uma string use a função Manipulação de strings strupr(string): para converter uma string para maiúsculas strlwr(string): para converter uma string para minúsculas *strstr(string,substring): para localizar uma substring dentro da string Exemplo 4 #include <stdio.h> #include <string.h> int main() { char string[20],substring[20]; char *extrai; int tamanho; printf("Localizando uma substring dentro da string\n"); printf("Entre com a string :"); scanf("%s",&string); printf("\n"); printf("Entre com a substring :"); scanf("%s",&substring); tamanho = strlen(substring); extrai = strstr(string,substring); printf("\n"); if(extrai){ printf("A string contém a substring.\n"); printf("A substring começa na posição %d.\n", extrai - string); printf("A substring tem %dcaracteres.\n", tamanho); } else printf("A string não contém a substring.\n"); return(0); } Conversão de strings em números Estas funções fazem parte do arquivo de cabeçalho stdlib.h Função Tipo numérico atof(string) float atoi(string) int atol(string) longint strtod(string) double strtol(string) long
Compartilhar