Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

fetish

[Código] Substr_Count

Recommended Posts

Bom eu estava criando o substr_count para um jogo, mais já aproveitei e criei para C Puro, quem quiser está ai:

 

int substr_count (char* string,char *string2){
	int i,h,j = 1;
	for (i = 0,h = 0;i < strlen(string) && string2[h];i++)
		if (string[i] == *string2 && string[i] != string[i-strlen(string)]) j++;
	return j-1;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

E o que deveria fazer? Retornar a quantidade de substrings ou o tamanho da substring?

A variável h não é incrementada. Isso está certo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim está certo, pois se incrementada ela dará varios bugs, por isso coloquei return j-1.

 

E ele retorna a quantidade de substring.

 

Exemplo:

 

pintf ("%d",substr_count("Meu Teste","e")); // Retorna 3

Compartilhar este post


Link para o post
Compartilhar em outros sites

Beleza.Então vou te dar uma variante:

 

#include <string.h>
#include <stdio.h>
int main() {

char * s1 = "abcdefabcdbc";
char * s2 = "bc";
char *inicio = &s1[0];
int contagem = 0;
if (strlen(s2)) {
	 while( (inicio = strstr(s1,inicio) ) {
		  contagem++;
		  inicio = &inicio[strlen(s2)];
	 }
	 printf("%d\n",contagem);
} else puts("String vazia");
  return 0;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Arrumado, ele apenas estava aceitando caracteres, agora aceita strings :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.