Ponteiros
Publicado por Enzo de Brito Ferber 15/09/2006
[ Hits: 4.676 ]
Homepage: http://www.maximasonorizacao.com.br
Operações com strings com alto uso de ponteiros. De quebrar uma função tipo a strncmp. :-) Altamente recomendado para quem está aprendendo ponteiros.
/* * Programa: Operações com strings * Arquivo: strings.c * Autor: Enzo Ferber 'Slackware_10' */ #include <stdio.h> #include <stdlib.h> #include <unistd.h> int check(char *str, char *part){ int i; char *aux; while(*str){ aux = str; *str++; if(!(cmp(aux, part,strlen(part)))){ i=1; break; }else i=0; } return i; } int cmp(char *str1, char *str2, int len){ int i = len; int res; for(i=0;i<len;i++){ if(*(str1+i) == *(str2+i)) continue; else return 1; } return 0; } char *makeLower(char *str){ int i; for(i=0;i<strlen(str);i++) str[i] = tolower(str[i]); return str; } int main(void){ char *str1; char *str2; char op; str1 = (char *)malloc(50*sizeof(char)); str2 = (char *)malloc(50*sizeof(char)); if(!str1 || !str2){ printf("- Erro ao alocar memoria\n"); exit(1); } printf("String1: "); __fpurge(stdin); scanf("%[^\n]", str1); printf("String2: "); __fpurge(stdin); scanf("%[^\n]", str2); __fpurge(stdin); printf("Diferenciar Maiusculas/Minusculas [s/n]: "); scanf("%c", &op); switch(op){ case 'n': str1 = makeLower(str1); str2 = makeLower(str2); break; case 's': break; } switch(check(str1, str2)){ case 1: printf("String1 contem String2\n"); break; case 0: printf("String1 nao contem String2\n"); break; } free(str1); free(str2); return 0; }
Lista simplesmente encadeada C
Nenhum comentário foi encontrado.
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Entendendo o que é URI, URL, URN e conhecendo as diferenças entre POST e GET
Instalando Discord no Ubuntu 24.04 LTS
Como instalar o XFCE4-terminal na sua distribuição Linux e integrá-lo ao sistema
Como instalar o Tilix Terminal no Gnome e usá-lo como menu drop-down ao estilo Quake
Problemas na configuração da acentuação do meu teclado ABNT2 (6)
Tela de login/senha com defeito (4)
BUG ao atualizar pacotes libglib2.0-0 libglib2.0-bin libglib2.0-data (8)