Corrijindo o erro em println na linguagem C

1. Corrijindo o erro em println na linguagem C

Jorge Luiz Gouveia Sousa
JorgeLuizGS

(usa Ubuntu)

Enviado em 15/04/2026 - 17:08h

Olá?
Tenho um código feito em C e ele não está retornando o println
Queria saber como corrijo o erro?

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <time.h>
#include <ctype.h>
#include <stdbool.h>

void rPrintln(const char *message){
if(message == NULL) {
printf("\n");
} else {
printf(message);
printf("\n");
}
}
double mathMin(double a,double b){
return fmin(a,b);
}
int main(){
double numero3 = 15.5;
double numero4 = 12.3;

// Encontrar o mínimo entre dois números de ponto flutuante
double minimoDouble = mathMin(numero3, numero4);
rPrintln("Mínimo entre %f e %f = %f", numero3, numero4, minimoDouble);

}



  


2. Re: Corrijindo o erro em println na linguagem C

Gustavo Samuel Bacagine Azevedo
Bacagine

(usa Arch Linux)

Enviado em 15/04/2026 - 18:02h

Boa noite.

Gostaria de saber em qual ambiente você está compilando?

Se é Linux ou Windows.

Pergunto isso pois, quando comecei a programar em C, notei que o compilador do Windows não detectava alguns erros que o do Linux detectava.

Ao compilar seu programa aqui no meu Linux, o gcc me deu o seguinte aviso:



gcc teste.c
teste.c: In function ‘main’:
teste.c:29:3: error: too many arguments to function ‘rPrintln’; expected 1, have 4
29 | rPrintln("Mínimo entre %f e %f = %f", numero3, numero4, minimoDouble);
| ^~~~~~~~ ~~~~~~~
teste.c:9:6: note: declared here
9 | void rPrintln(const char *message){
| ^~~~~~~~


Para corrigir isso, você deve:

1) Usar a biblioteca stdarg.h.
2) Alterar o protótipo da função rPrintln para a seguinte:
void rPrintln(const char *message, ...) 

3) Usar va_list e vprintf para printar o conteúdo da variável message.

Seguindo esses passos, você terá que compilar da seguinte maneira e obterá a saída a seguir:


gcc teste.c -lm
./a.out
Mínimo entre 15.500000 e 12.300000 = 12.300000







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts