Ciao a tutti ho un piccolo problemini con il parsing di un array di caratteri ...


codice:
#include <iostream>
#include <fstream>
#include <string.h>

void LibTest (char * theDependancies)
{
		int i =0;
		char aBuffer [1024 * 1024]; // mi riservo 1MB di memoria 
		memset(aBuffer, 0, sizeof (aBuffer)); // pulisco la zona di memoria che utilizzo per analizzare il file
		
			
		while ( true )
		{
			std::cout << i << " - ";
			const char aChar = theDependancies[i] ;
			std::cout << aChar << std::endl;
			i++;
			if ((theDependancies[i] == '\0') && (theDependancies[i+1] == '\0')) break;
			// finqui ottendo la stampa di tutti i valori in senso verticale
			// serve la stampa in senso orizzontale e andare a capo dopo ogli parola
		
		}
		
		std::cout << i << std::endl; 
		
}
int main(void)
{
	char * aDependancies  = "uno\0due\0tre\0quattro\0";
	LibTest (aDependancies);	
	return 0;
}

l'output che ottengo è

0 - u
1 - n
2 - o
3 -
4 - d
...
17 - r
18 - o
19

Io ho bisogno di parsificare l'array e far uscire l'output nel seguente modo

1 - uno
2 - due
3 - tre
4 - quattro

Non riesco a capire come impostare la memorizzazioni su aBuffer[] per poi farla stampare a video tutta la parola e andare a capo.