Erreur programme c

arou125 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
Je galere depuis un moment avec une erreur de compilation sur un programme::

#include "udf.h"
#define mu_lam
# define DEFINE_VELOCITY (cell_viscosity, thread)
{
real mu_lam;
real temp = C_T(cell, thread);
if (temp > 288.)
mu_lam = 5.5e-3;
else if (temp > 286.)
mu_lam = 143.2135 - 0.49725 * temp;
else
mu_lam = 1.;
return mu_lam;
}

en la compilant sur code:blocks8.2 j'obtiens l'erreur suivante:

error: expected unqualified-id before '{' token|
||=== Build finished: 1 errors, 0 warnings ===|

sachant que c'est le programme entier, donc pas d'autres boucles avant ou apres...
pouvez vous m'aidez svp...je suis débutante en C merci pour votre réponse d'avance.

2 réponses

YOUHA
 
Il faudrait que tu déclares ta fonction, je pense que l'erreur vient de là
#include "udf.h"
#define mu_lam
# define DEFINE_VELOCITY (cell_viscosity, thread)
Function Test{
    real mu_lam;
    real temp = C_T(cell, thread);
if (temp > 288.)
    mu_lam = 5.5e-3;
    else if (temp > 286.)
        mu_lam = 143.2135 - 0.49725 * temp;
    else
        mu_lam = 1.;
return mu_lam;
} 
0
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
C'est du C ça ??? on manque de données en particulier udf.h
Déjà j'approuve ce que dit Youha, des accolades ouvrantes sans nom c'est étrange.
Mais plus grave :
"#define mu_lam"
en faisant ça, tu remplaces toutes les chaînes mu_lam par ... rien 8-(
ce qui donne :
{
  real ;
  real temp = C_T(cell, thread);
  if (temp > 288.)
     = 5.5e-3;
  else if (temp > 286.)
    = 143.2135 - 0.49725 * temp;
  else
     = 1.;
  return ;
} 

et le compilateur risque de t'envoyer paitre vertement.
De même, ton #define DEFINE_VELOCITY est étrange. Je me demande si tu as compris le fonctionnement des macros.
0