/** *\fn int myprintf(const char *format,...) *\brief wrapper pour la fonction printf *\param format : chaine de formatage *\param ... : liste d'arguments *\return : nombre de caracteres ecrits */ int myprintf(const char *format,...) { const size_t len_format=mystrlen(format)+1; int returnval =0; va_list ap; va_start(ap, format); #ifdef PREDEF_STANDARD_C_1999 returnval= vfprintf(stdout,format,ap); va_end (ap); return returnval; #else /*recherche des indicateurs de "size_t" et on les convertit*/ { char *newformat = allocArray1D(len_format,sizeof(*newformat)); changeFormat(newformat,format, len_format); returnval=vfprintf(stdout,newformat,ap); freeArray1D(newformat),newformat=NULL; va_end (ap); return returnval; } #endif }
/** *\fn int mysnprintf (char *str, size_t size, const char *format,...) *\brief wrapper pour la fonction snprintf *\param str : tableau de caractere contenant la chaine formatee *\param size : taille de la chaine str *\param format : liste d'arguments *\return : nombre de caracteres copies dans str sans compter le \\0 final ou qui auraient du etre copies si la chaine avait ete assez longue */ int mysnprintf (char *str, size_t size, const char *format,...) { va_list ap; int returnval =0; #ifdef PREDEF_STANDARD_C_1999 va_start(ap, format); returnval= vsnprintf(str,size,format,ap); va_end(ap); return returnval; #else const size_t len_format=mystrlen(format)+1; char *newformat = allocArray1D(len_format,sizeof(*newformat)); va_start(ap, format); changeFormat(newformat,format, len_format); if (len_format>size) { va_end(ap); str[0]='\0'; freeArray1D(newformat),newformat=NULL; return -1; } returnval=vsprintf(str,newformat,ap); freeArray1D(newformat),newformat=NULL; va_end (ap); return returnval; #endif }
void edwChangeFormat(char *format, int idCount, char *idStrings[]) /* edwChangeFormat - Change format and force a revalidation for a file.. */ { struct sqlConnection *conn = edwConnectReadWrite(); /* Convert ascii id's to valid file ids so we catch errors early. */ long long ids[idCount]; struct edwValidFile *vfs[idCount]; int i; for (i=0; i<idCount; ++i) { long long id = ids[i] = sqlLongLong(idStrings[i]); struct edwValidFile *vf = vfs[i] = edwValidFileFromFileId(conn, id); if (vf == NULL) errAbort("%lld is not a fileId in the edwValidFile table", id); } /* Loop through each file and change format. */ for (i=0; i<idCount; ++i) { changeFormat(conn, vfs[i], format); } sqlDisconnect(&conn); }
void FldPropertyDlg::precisionChanged(int row) { Q_UNUSED(row); changeFormat(ui->lstFormat->currentRow()); }