SoloCodigo
Programación General => C/C++ => Mensaje iniciado por: carvann en Viernes 10 de Abril de 2009, 20:45
-
este método trata de leer un archivo y la primera linea del archivo es un numero el cual no se de que tamaño es, por lo cual no inicializo
la variable mystdchararray con un valor fijo, sin embargo esto me genera un error y no se que podria hacer para que no me salga los siguientes errores:
void lecturaArchivo(String ^rRuta)
{
StreamReader ^in = gcnew StreamReader(File::OpenRead(rRuta));
String ^linea = in->ReadLine();
array<Char>^delimiter = linea->ToCharArray();
char mystdchararray[delimiter->Length];
//error C2057: se esperaba una expresión constante
//error C2466: no se puede asignar una matriz de tamaño constante 0
//error C2133: 'mystdchararray' : tamaño desconocido
for (int i= 0; i < delimiter->Length; i++)
{
mystdchararray = delimiter;
};
numeroMaterias = atoi(mystdchararray);
while(!(in->EndOfStream))
{
linea = in->ReadLine();
Console::WriteLine(linea);
}
in->Close();
Console::ReadLine();
}
-
char mystdchararray[delimiter->Length];
No puedes declarar el tamaño de un vector con una variable. El compilador necesita algo fijo para reservar la memoria, si no, usa memoria dinámica (new).
-
vas a tener que usar estructuas de datos dinamicas, usando NEW y DELETE