Wicri:Dilib, module Buffer, interface BufferFormat

De Wicri Outils
Révision datée du 1 septembre 2020 à 10:41 par imported>Jacques Ducloy (Code source)

Le type BufferFormat est un outil pour générer des chaînes à partir d'un format (type printf).

Maquette

Code source

/*   -*- coding: utf-8 -*-  */
#include "Buffer.h"
/* a insérer dans Buffer.h */
struct BufferFormatMemoryStruct
{
  Buffer **bufArray;
};

typedef struct BufferFormatMemoryStruct BufferFormatMemory;

BufferFormatMemory* NewBufferFormatMemory();

/* a créer BufferFormat.o (lib) */

BufferFormatMemory* NewBufferFormatMemory()
{
   BufferFormatMemory *memory;
   int i;

   memory = (BufferFormatMemory *) malloc(sizeof(BufferFormatMemory));
   memory->bufArray=(Buffer **)malloc(sizeof(Buffer*)*16*4);  
         /* char *[4 * 16] ; for 4 liens of ascii char */
   for (i=0 ; i<=63 ; i++) memmory->bufArray[i]=NULL;
   return memory;
}

/* zone test  (non regression ? )*/
int main()
{
BufferFormatMemory *mem1;
char c;
mem1 = NewBufferFormatMemory();
c='x';
mem1->bufArray[c-'0']=NewBuffer();
BufferStrcpy(mem1->bufArray[c-'0'],"foo");
printf("%s\n", BufferString(mem1->bufArray[c-'0']));
}

Importation

WicriGetPage -l wicri-outils.fr -p "Wicri:Dilib, module Buffer, interface BufferFormat"   \
      | MediaWikiExtractSources -w | HfdStoreFile

Compilation

gcc testBufferFormat.c $DILIB_CC -o testBufferFormat

Test

Pour visualiser la liste d'entrée
./testBufferFormat