Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se
Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Passar todas variáveis como endereço

Pessoal, há problema se eu passar todas as variáveis da função como endereços?

Acho melhor passar logo tudo como endereço pra padronizar na cabeça :) .

Obrigado pela resposta!

void potencia(int* result, int* x1 , int* x2) {
    *result = 1;
    for (int idx = 1 ; idx <= *x2 ; idx ++) {
        *result *= *x1;
    }
    printf("resultado da potencia %d \n", *result );
}

int main() {
    int a = 25;
    int b = 32;
    int d = 2 ;
    int potenciares = 0;
    int result = sum(&a , &b);
    printf("Result is %d\n", result );
    potencia( &potenciares, &a, &d);
}
2 respostas
solução!

Nesse caso, não tem problema algum. Se você quisesse fazer alguma mudança destrutiva na variável que é indesejável ao resto do código, daí não seria bom usar ponteiros. Como tudo, varia de caso a caso. De maneira geral, sempre que for possível, é melhor usar ponteiros: economiza memória e instruções do processador. Afinal, C é sobre eficiência e otimização.

Muito obrigado Murilo!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software