forse ci siamo manca poco ....
Ho capito come fare il parsing ma ancora ho le strighe su collonna anzicche su riga.
codice:
#include <iostream>
#include <fstream>
#include <string.h>
void LibTest (char * theDependancies)
{
int i =0;
int x =0;
int count=0;
char aBuffer [99];
memset(aBuffer, 0, sizeof (aBuffer)); // pulisco la zona di memoria che utilizzo per analizzare il file
int aExtra = 0;
while ( true )
{
const char aChar = theDependancies[i] ;
if (aChar != 0)
{
aBuffer[i]=theDependancies[i];
count++;
}
else
{
std::cout << "for(y="<< x << " ;y< "<<count <<" ; y++)"<< std::endl;
for (int y=x ;y < count+aExtra ; y++)
{
std::cout << aBuffer[y]; // cosi non stampa nulla
std::cout << aBuffer[y]<< std::endl; // stampa ma su colonna
}
x=count;
++aExtra;
std::cout <<std::endl<< "count : "<< count << " x: "<<x << std::endl<< std::endl;
}
i++;
if ((theDependancies[i] == '\0') && (theDependancies[i+1] == '\0')) break;
}
std::cout << "stringa:" << std::endl;
for (int y=x ;y < count+aExtra ; y++)
{
std::cout << aBuffer[y]; // cosi non stampa nulla
std::cout << aBuffer[y]<< std::endl; // stampa ma su colonna
}
std::cout << "," << std::endl;
std::cout << i << std::endl;
}
int main(void)
{
char * aDependancies = "uno123\0due123\0tre123\0quattro123\0\";
LibTest (aDependancies);
return 0;
}
Io mi chiedo perchè non stampa nulla su una riga ma vuole per forza il carattere di fine riga ?????