med_int nedfscfe(med_idt *fid, char *scalaire, med_int *lon1, med_float *val, med_int *numdt, char *dt_unit, med_int *lon2, med_float *dt, med_int *numo) #endif { med_int ret; char *fn1, *fn2; fn1 = _MED2cstring(scalaire, (int) * lon1); fn2 = _MED2cstring(dt_unit, (int) * lon2); if (!fn1 || !fn2) return(-1); ret = (int) MEDscalaireFlottantEcr( *fid,(char *)fn1,(med_float) *val, (med_int) *numdt, (char *) fn2, (med_float) *dt, (med_int) *numo ); _MEDcstringFree(fn1); _MEDcstringFree(fn2); return(ret); }
int main (int argc, char **argv) { med_err ret; med_idt fid; char nom_scalaire1[MED_TAILLE_NOM+1] = "VariableEntiere"; char description1[MED_TAILLE_DESC+1] = "Une premiere description"; char nom_scalaire2[MED_TAILLE_NOM+1] = "VariableFlottante"; char description2[MED_TAILLE_DESC+1] = "Une seconde description"; med_int vali1 = 56; med_int vali2 = -789; med_float valr1 = 67.98; /* Creation du fichier test21.med */ if ((fid = MEDouvrir("test21.med",MODE_ACCES)) < 0) { MESSAGE("Erreur a la creation du fichier test21.med"); return -1; } /* Creation d'un variable scalaire entiere */ if (MEDscalaireCr(fid,nom_scalaire1,MED_INT,description1) < 0) { MESSAGE("Erreur a la creation d'une variable scalaire entière"); return -1; } printf("Creation d'une variable scalaire entiere \n"); /* Ecriture d'un valeur sans pas de temps et sans numero d'ordre*/ if (MEDscalaireEntierEcr(fid,nom_scalaire1,vali1,MED_NOPDT,"",0.0,MED_NONOR) < 0) { MESSAGE("Erreur a l'ecriture d'une valeur entiere"); return -1; } printf("Ecriture d'une valeur entiere sans pas de temps \n"); /* Ecriture d'une valeur entiere avec 1 pas de temps et sans numero d'ordre */ if (MEDscalaireEntierEcr(fid,nom_scalaire1,vali2,1,"ms",5.5,MED_NONOR) < 0) { MESSAGE("Erreur a l'ecriture d'une valeur entiere"); return -1; } printf("Ecriture d'une valeur entiere avec pas de temps \n"); /* Creation d'un variable scalaire flottante */ if (MEDscalaireCr(fid,nom_scalaire2,MED_FLOAT64,description2) < 0) { MESSAGE("Erreur a la creation d'une variable scalaire flottante"); return -1; } printf("Creation d'une variable scalaire flottante \n"); /* Ecriture d'une valeur reelle avec 1 pas de temps et 1 numero d'ordre */ if (MEDscalaireFlottantEcr(fid,nom_scalaire2,valr1,1,"ms",5.5,2) < 0) { MESSAGE("Erreur a l'ecriture d'une valeur flottante"); return -1; } printf("Ecriture d'une valeur reelle avec pas de temps et numero d'ordre \n"); /* Fermeture du fichier */ if (MEDfermer(fid) < 0) { MESSAGE("Erreur a la fermeture du fichier"); return -1; } return 0; }