Manipulando Strings

Hoje vou explicar algumas funções que nos permitem manipular strings.

CONTANDO O NÚMERO DE CARACTERES QUE UMA STRING CONTÉM:
CODE
int main(){
char string[256];
int i;
printf("Digite uma string e pressione enter\n");
gets(string);
for(i=0; string[i] != NULL; i++){
putchar(string[i]);
}


CONTA QUANTOS CARACTERES EM A STRING, COMO USAR:
CODE
#include <stdio.h>
#include <conio.h>
#include <string.h>
int main(){
char titulo_livro = "fernando777\n";
printf("%s contem %i caracteres\n", titulo_livro, strlen(titulo_livro));
getch();
}


COPIANDO UMA STRING PARA OUTRA:
CODE
char titulo[] = "LOL";
char livro[128];
strcpy(livro, titulo);
printf("Nome do livro %s\n", livro);



ANEXANDO O CONTEÚDO DE UMA STRING EM OUTRA
CODE
    char nom[255];
     printf("Digite o complemento\n");
     scanf("%s", &nom);
char nome[] = "Fernando "; strcat(nome, nom);
printf("%s", nome);



ANEXANDO N CARACTERES EM UMA STRING
CODE
int main(){
     char nome[64] = "fernando";
strncat(nome, " e juliana", 20);
printf("Voce votou em %s?\n", nome);
getch();
}


TRANSFORMANDO UMA STRING EM OUTRA:
CODE
#include <stdio.h>
#include <conio.h>
int main(){
char buffer[64] = "fernando777";
char alvo[64];
int tamanho;
tamanho = LOL(alvo, buffer, sizeof(buffer));
printf("Tamanho %i, Alvo %s, Buffer %s", tamanho, alvo, buffer);
getch();
}



CONVERTENDO UMA STRING DE CARACTERES PARA MAIUSCULA OU MINUSCULA:
CODE
#include <stdio.h>
#include <conio.h>
#include <string.h>
int main(){
     char letra[255];
     char letra1[255];
     printf("Digite a string\n");
     scanf("%s", &letra);
     strupr(letra);
printf("%s\n", letra);
printf("Digite a string\n");
scanf("%s", &letra1);
strlwr(letra1);
printf("%s\n", letra1);
getch();
}


INVERTENDO A ORDEM DA STRING:
CODE
int main(){
char letra[255];
printf("Digite a string\n");
scanf("%s", &letra);
strrev(letra);
printf("%s", letra);
getch();
}


COMPARANDO 2 STRINGS DE CARACTERES:
printf("comparando ABC com Abc %i\n", strcmp("ABC","Abc"));

COMPARANDO OS PRIMEIROS N CARACTERES DE DUAS STRINGS:
printf("Comparando 3 letras Abc com Abc %i\n", strncmp("Abc", "Abc", 3));

ENCONTRANDO A ULTIMA OCORRÊNCIA DE UM CARACTERE EM UMA STRING:
CODE
#include <stdio.h>
#include <string.h>
#include <conio.h>
int main(){
char titulo[64] = "Biblia do C";
char *ptr;

if (ptr = strrchr(titulo, 'C'))
printf("A ocorrencia mais a direita de C esta no deslocamento %i\n", ptr - titulo);
else
printf("Caractere nao encontrado\n");
}


FUNÇÕES DA BIBLIOTECA DE EXECUÇÃO QUE SEUS PROGRAMAS PODEM USAR PARA CONVERTER REPRESENTAÇÕES ASCII DE UM VALOR NUMÉRICO:
atof Converte a representação em string de caracteres de um valor em ponto flutuante
atoi Converte a representação em string de caracteres de um valor inteiro
atol Converte a representação em string de caracteres de um valor inteiro longo
strtod Converte a representação em string de caracteres de um valor precisão dupla
strtol Converte a representação em string de caracteres de um valor longo


DUPLICANDO STRINGS:
CODE
#include <stdio.h>
#include <string.h>
#include <conio.h>
int main(){
char *titulo;
if((titulo = strdup("Fernando")))
printf("Titulo: %s", titulo);
else
printf("Erro ao duplicar string");
getch();
}


LOCALIZANDO UMA SUBSTRING DENTRO DE UMA STRING:
CODE
printf("Procurando Abc em AbcDef %s\n", (strstr("AbcDef", "Abc")) ? "Encontrado" : "Nao encontrado");


DETERMINANDO SE O VALOR É ALFANUMÉRICO:
CODE
int main(){
char letra;
scanf("%c", &letra);
if (isascii(letra)){
                     printf("encontrado");
                     }
                     else{
                          printf("nao eh alfa");
                          }

getch();
}


DETERMINANDO SE UM CARACTERE É UMA LETRA:
CODE
#include <ctype.h>
int main(){
char letra;
scanf("%c", &letra);
if (isalpha(letra)){
                     printf("encontrado");
                     }
                     else{
                          printf("nao eh letra");
                          }

getch();
}


DETERMINANDO SE UM CARACTERE É UM DIGITO:
CODE
if(isdigit(letra))


DETERMINANDO SE UM CARACTERE É UM CARACTERE GRAFICO:
CODE
if(isgraph(letra))


DETERMINANDO SE UM CARACTERE É MAIUSCULO OU MINUSCULO:
CODE
if(islower(caractere))
if(isupper(caractere))


DETERMINANDO SE UM CARACTERE É IMPRIMIVEL:
CODE
if(isprint(caractere))


DETERMINANDO SE UM CARACTERE É UM SINAL DE PONTUAÇÃO:
CODE
if(ispunct(caractere))


DETERMINANDO SE UM CARACTERE POSSUI UM ESPAÇO EM BRANCO:
CODE
if(isspace(caractere))


DETERMINANDO SE UM CARACTERE É HEXADECIMAL:
CODE
if(isxdigit(caractere))


CONVERTENDO STRINGS MINUSCULAS PARA MAIUSCULAS:
CODE
#include <ctype.h>
int main(){
char string[] = "Fernando rules";
int i;
for(i = 0; string[i]; i++)
putchar(toupper(string[i]));
putchar('\n');
getch();
}


CONVERTENDO STRINGS MAIUSCULAS PARA MINUSCULAS:
CODE
#include <ctype.h>
int main(){
char string[] = "Fernando rules";
int i;
for(i = 0; string[i]; i++)
putchar(tolower(string[i]));
putchar('\n');
getch();
}


Abraços,
fernando777

Você gostou? Comente no fórum!

Mais recentes em Outras Linguagens

Não consigo.
Por 2pac - Não consigo ver as aulas da 4 a 9 aula vai direto da...
Tudo sobre manipulação de strings e caracteres
Por fernando777 - Muito completo...
Criando bibliotecas no c
Por fernando777 - Criando bibliotecas no c - - a criação de bibliotecas...
Operador sizeof no c
Por fernando777 - Operador sizeof - - o operador sizeof mostra quanto...
Estrutura if else - se senÃo e operadores lógicos
Por fernando777 - If else e operadores lógicos no c...

Ver mais Artigos de Outras Linguagens.

Ver e retirar outras dúvidas no fórum Webly.

Alguns Direitos Reservados | RSS | O Fórum

Webly Portal e Fóruns - Internet + Humana | Design by ArthurHenrique.com