Home › Fóruns › Linguagem C › M02A05 – Operações com Strings
- Este tópico contém 7 respostas, 5 vozes e foi atualizado pela última vez 11 meses atrás por Tutora Jessica.
-
AutorPosts
-
-
25 de fevereiro de 2021 às 22:39 #61814thiago perez novasParticipante
Boa noite, eu utilizo LINUX Ubuntu 18.04 e as funções strcmp, strlwr e strupr não funcionam. strcmp da resultado 0 se as strings forem exatamente iguais e outros valores caso sejam diferentes. strlwr e strupr nem existem pra mim na biblioteca string.h
-
26 de fevereiro de 2021 às 21:54 #61868Tutora MaylaMestre
Thiago, as funções strlwr e strupr não fazem parte do padrão do C, são implementadas apenas em versões antigas do compilador de C da Microsoft.
Sobre a função strcmp, o comportamento dela é esse mesmo, caso as strings sejam iguais ela retorna 0; caso a primeira string seja “menor” que a segunda retorna -1; caso a primeira string seja “maior” que a segunda retorna 1.
Espero ter ajudado, quaisquer outras dúvidas estamos a disposição. -
12 de junho de 2021 às 12:22 #69326Gustavo Teixeira da SilvaParticipante
Boa tarde,
Segue uma opção para converter letras minúsculas para maiúsculas para quem usa Linux.
char nome[] = “Uma alternativa”; //criando uma variavel e inserindo algum texto
int i = 0; //criando um contador
while (i < strlen(nome)){ //percorrendo os caracteres da minha string
printf(“%c”, toupper(nome[i])); //convertendo para maiuscula e imprimindo letra a letra
i++; //incrementando o contadorAbraço.
Gustavo
-
15 de junho de 2021 às 21:15 #69523Tutora MaylaMestre
Gustavo, obrigada por compartilhar com a comunidade! Graças a interações assim que a comunidade se torna cada vez melhor.
Caso tenha alguma dúvida durante o seu aprendizado entre em contato que lhe ajudaremos. -
24 de dezembro de 2023 às 16:28 #129184Marcos de Siqueira PintoParticipante
No exemplo dado em aula onde o professor Gustavo demonstra o uso da strcmp, onde s1 = Guanabara e s2 = Gustavo, tem o retorno de -1, pois s1 > s2, no entanto no mesmo código, quando eu subtituo s1 = Siqueira e s2 = Marcos o retorno é l, não entendi o motivo?
-
26 de dezembro de 2023 às 10:25 #129240Tutora JessicaModerador
Ola Marcos, nos envie seu código por completo por favor.
-
27 de dezembro de 2023 às 12:37 #129388Marcos de Siqueira PintoParticipante
Bom dia!
Conforme solicitado segue o código completo.
#import <stdio.h>
#import <locale.h>
#import <string.h>void main() {
setlocale(LC_ALL, “Portuguese”);
char s1[] = “Guanabara”;
char s2[] = “Gustavo”;
int resp = strcmp(s1, s2);
printf(“\nO resultado da comparação entre %s e %s é %d\n”, s1, s2, resp);}
/*A função strcmp, faz a comparação entre dois strings, se o primeiro string for maior o retorno é -1, mas nesse caso esta dando
erro, se vc substituir o nome Guanabara por Siqueira e Gustavo por Marcos, o valor de retorno dá diferente */ -
27 de dezembro de 2023 às 17:07 #129409Tutora JessicaModerador
Ola Marcos, trouxe a sua duvida para uma ja existente no forum, dê uma olhada na explicação acima e veja se faz sentido pra você, caso continue com dúvidas retorne ao forum que vamos tentar lhe ajudar. 🖖🏼
-
-
AutorPosts
- Você deve fazer login para responder a este tópico.