1
resposta

STRLEN

No lugar de int tam / tam, daria pra usar o strlen ?

1 resposta

Oi, Isabela.

Tudo bem?

Na verdade o strlen é uma função específica para strings (arrays de caracteres terminados em \0). Ela não funciona para arrays de inteiros ou outros tipos de dados.

No caso do exercício que você mencionou, onde você precisa somar os elementos de um array de inteiros, você deve continuar passando o tamanho do array como um argumento para a função. A função strlen não pode ser usada aqui porque ela só calcula o comprimento de strings, não de arrays de inteiros.

Aqui está um exemplo de como sua função soma poderia ser implementada:

int soma(int *array, int tamanho) {
    int soma = 0;
    for (int i = 0; i < tamanho; i++) {
        soma += array[i];
    }
    return soma;
}

E você pode chamá-la assim:

int nums[3];
nums[0] = 10;
nums[1] = 20;
nums[2] = 30;

int total = soma(nums, 3);

Neste exemplo, 3 é o tamanho do array que você está passando para a função soma.

Espero ter ajudado. Qualquer dúvida manda aqui. Bons estudos.