Sigo sin conseguirlo....
Creo que casi lo tengo pero algo estoy haciendo mal...
Este es mi codigo:
Código:
//
// main.cpp
// Practica2
//
// Created by dryant on 30/06/15.
// Copyright (c) 2015 dryant. All rights reserved.
//
#include <iostream>
#include <fstream>
#include <string>
#include <sstream>
#include <cstring>
using namespace std;
int main(int argc, const char * argv[])
{
int cols=18,filas=17;
string matrizAdyacencia[40][20];
ifstream fmatriz;
fmatriz.open("matrizInt.dat");
if (fmatriz.good()) {
cout << "el fichero se ha abierto correctamente" << endl;
}
if (fmatriz.fail()) {
cout << "ERROR abriendo el fichero" << endl;
}
string texto;
string linea;
char lineaAux[1024] ;
int i=0, j=0;
while (!fmatriz.eof()) {
getline(fmatriz, linea, '\n'); //Guardo en la variable cada linea de la matriz
strcpy( lineaAux,linea.c_str()); //Paso la variable string linea a una variable de tipo vector de caracteres "lineaux"
char *ptr;
ptr = strtok(lineaAux,";"); //Divido en tokens cada vez que encuentro ";"
while (ptr!=NULL) {
matrizAdyacencia[i][j]=ptr;
cout << matrizAdyacencia[i][j] << " | ";
ptr = strtok(NULL, ";");
j++;
}
cout << "cambio de linea \n";
i++; //Aumento una linea
j=0; //Pongo otra vez cols a 0
}
//Muestro la matriz
for (i=0; i<filas; i++) {
for (j=0; j<cols; j++) {
cout << matrizAdyacencia[i][j] << " | ";
}
cout << endl;
}
fmatriz.close();
return 0;
}
Pero me sale una matriz incompleta....
Donde c*** esta el error ahora???
Gracias!