Buscar

Se essa função é chamada com a substring contendo “dos” e a string principal contendo “Olá a todos”, a função retornará o valor 8. Todas as funções...

Se essa função é chamada com a substring contendo “dos” e a string principal contendo “Olá a todos”, a função retornará o valor 8. Todas as funções, exceto aquelas declaradas para serem do tipo void, retornam um valor. Esse valor é explicitamente especificado pela declaração return ou desconhecido, se nenhuma declaração return é especificada. Isso significa que uma função pode ser usada como um operando em qualquer expressão válida em 90 C. Portanto, cada uma das seguintes expressões são válidas em C: x = abs(y); if (max(x, y) > 100) printf(“excelente”); for (ch = getchar(); isdigit(ch); ) ...; Entretanto, uma função não pode ser alvo de uma atribuição. Uma declaração como swap(x, y) = 100 ; /* declaração incorreta */ é errada. O compilador C sinalizará com um erro e não compilará um programa que contenha tal declaração. Normalmente as funções, exceto aquelas do tipo void, retornam valores. Entretanto, você não tem que necessariamente usá-los para alguma coisa. Uma questão bastante comum com relação a valores de retorno de funções é: “ Eu tenho que atribuir este valor para alguma variável, uma vez que ele está sendo retornado?”. A resposta é não. Se não há atribuição especificada, o valor retornado é descartado. Considere o seguinte programa que usa a função mul( ). #include int mul (int a, int b){ return (a * b) } void main(){ int x, y, z; x = 10; y = 20; z = mul(x, y); //linha 1 printf (“%d”, mul (x, y)); //linha 2 mul (x, y); //linha 3 } Na linha 1, o valor de retorno de mul( ) é associado a z. Na linha 2, o valor de retorno não é associado, porém ele é usado pela função printf( ). Finalmente, na linha 3, o valor de retorno é perdido porque ele não é associado a outra variável nem usado como parte de uma expressão. 7.3 FUNÇÕES RETORNANDO VALORES NÃO-INTEIROS Quando o tipo de uma função não é explicitamente declarado, ele é automaticamente definido como int. Como exemplo introdutório de uma função retornando um tipo não-inteiro, aqui está um programa que usa a função sum( ), que retorna um valor do tipo double que é a soma de seus dois argumentos double: #include double sum(double a, double b); /* Declaração inicial necessária quando a função não retorna int. Aqui está sendo definido o protótipo da função. Dessa forma, a função sum poderá ser escrita após a função main(), sem gerar erro de compilação e/ou execução. */ void main() { double primeiro, segundo; primeiro = 1023.23; segundo = 990.0; printf(“%lf”, sum(primeiro, segundo)); } double sum(double a, double b){ //retorna um float return a + b; } O protótipo antes de main( ) diz ao compilador que a função sum( ) retornará um tipo de dado double em ponto flutuante. Para um exemplo mais prático, aqui está um programa que calcula a área de um círculo, dado o seu raio: #include #include float area(float raio); //protótipo da função area void main(){ float r,res; printf(“Informe o raio: ”); scanf(“%f”, &r); res = area(r); printf(“A área é: %f
”, res); } float area(float raio){ return 3.14159265 * pow(raio, 2); } Observação: A declaração dos argumentos no protótipo antes de main( ) é opcional. 7.3.1 FUNÇÕES QUE RETORNAM PONTEIROS Ainda que funções que retornam ponteiros sejam manipuladas exatamente como

A função encontra_substr retorna a posição inicial da substring na string principal.
Uma função pode ser usada como um operando em qualquer expressão válida em C.
Uma função não pode ser alvo de uma atribuição.
Funções que retornam valores não-inteiros devem ter seu tipo explicitamente declarado.

Essa pergunta também está no material:

Faculdade_de_Ciencias_Aplicadas_de_Casca (1)
154 pág.

Ciências Aplicadas Universidade Estácio de SáUniversidade Estácio de Sá

💡 1 Resposta

User badge image

Ed Verified user icon

Parece que você está descrevendo algumas informações sobre funções em C, mas não vejo uma pergunta específica. Você poderia reformular sua pergunta para que eu possa ajudá-lo melhor?

0
Dislike0

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais