Crie uma função que calcula o comprimento de uma string e que possui a seguinte assinatura: void tamanho(char *str, int *strsize).

Passo 1

O enunciado pede pra gente criar uma função em C com a assinatura void tamanho(char *str, int *strsize) que receba uma string terminada em ‘\0’ e escreva no inteiro apontado por strsize o comprimento dessa string.

Passo 2

Em C, uma string é simplesmente um vetor de caracteres que termina num caractere nulo ‘\0’. O comprimento de uma string é o número de caracteres antes desse ‘\0’. Para descobrir esse comprimento, basta percorrer o vetor até encontrar o terminador.

Passo 3

A estratégia é usar um contador inteiro i que começa em zero e aumentar esse contador a cada iteração enquanto str[i] for diferente de ‘\0’. Quando o loop parar, i conterá exatamente o número de caracteres.

Passo 4

Por fim, atribuimos esse valor ao inteiro apontado por strsize usando *strsize = i para que quem chamou a função receba o resultado.

Resposta

void tamanho(char *str, int *strsize) {
int i = 0;
while (str[i] != ‘\0’) {
i++;
}
*strsize = i;
}

Exercícios relacionados