Ajout de fonctions permettant la gestion de la sortie verbeuse

This commit is contained in:
Mattéo Delabre 2016-10-22 01:08:56 +02:00
parent b3d7c1a32e
commit 59b20e9321
2 changed files with 46 additions and 1 deletions

View File

@ -1,4 +1,26 @@
#define IS_VERBOSE TRUE
#ifndef __IN303_COMMON_H__
#define __IN303_COMMON_H__
#define TRUE 1
#define FALSE 0
#define NUM_CHARS 256
/**
* Écrire sur la sortie standard à la manière de printf,
* seulement si le mode verbeux est actif
*/
void printVerbose(const char *format, ...);
/**
* Active ou désactive l'affichage des messages verbeux
* (mode verbeux). Si activé, `printVerbose` écrit sur
* la sortie standard. Sinon, `printVerbose` n'a pas d'effet
*/
void setVerbose(int);
/**
* Renvoie l'état du mode verbeux
*/
int isVerbose();
#endif

23
src/common.c Normal file
View File

@ -0,0 +1,23 @@
#include "../include/common.h"
#include <stdarg.h>
#include <stdio.h>
static int is_verbose = FALSE;
void printVerbose(const char *format, ...) {
if (is_verbose) {
va_list args_list;
va_start(args_list, format);
vprintf(format, args_list);
va_end(args_list);
}
}
void setVerbose(int flag) {
is_verbose = flag;
}
int isVerbose() {
return is_verbose;
}