Autor
|
Tema: Matrices dinámicas en C (Leído 4,822 veces)
|
thekill01
Desconectado
Mensajes: 3
|
Hola amigos, la verdad es que soy nuevo en la programación en C y tengo el siguiente problema.
tengo que leer un archivo de texto y quiero guardar los datos en una matriz. El problema es que la cantidad de columnas si sé cuantas son, pero la cantidad de filas no lo sé, ya que este archivo cambia de tamaño cada cierto tiempo. Quiero guardar los datos en una matriz dinámica, de forma que leo este archivo de texto y guardo los datos en una matriz. Así de acuerdo a la cantidad de información que hay en el archivo sea la cantidad de filas de la matriz. Y no sé como implementar esto. Espero que me puedan ayudar Saludos Mis disculpas si este tema ya está previamente, pero busqué y no lo encontré.
|
|
|
En línea
|
|
|
|
exel
Desconectado
Mensajes: 50
|
Si sabes manejar memoria dinamica (malloc, etc) arreglos y archivos pues ya lo tendrias arreglado.
Cuando ampieces a leer el archivo, sabras que debes obtener la primera fila, con la cantidad de columnas que ya dices conocer. Luego obtendras la segunda fila, y la tercera, etc. Hasta llegar al fin de archivo con la funcion feof(puntero a archivo) que indica que ya no hay mas datos en el archivo.
Por utilidad, el Sistema Operativo no dejara que otro programa utilize el archivo hasta que tu programa termine de utilizarlo.
|
|
|
En línea
|
|
|
|
Aberroncho
|
La reserva dinámica de memoria en C (estándar ANSI) se hace con las funciones malloc() y free(). La primera te da un puntero a la memoria y la segunda te libera la memoria. Se me ocurre que puedes hacerlo de dos formas: - Cuentas las líneas del ficheros y haces una única reserva de memoria para todo el array
- Haces una lista enlazada en la que cada nodo es una fila del fichero vas reservando la memoria línea a línea y añadiéndola a tu lista enlazada
|
|
|
En línea
|
"La ignorancia es la noche de la mente, pero una noche sin Luna ni estrellas." (Confucio)
|
|
|
icoheed
Desconectado
Mensajes: 12
|
La forma mas fácil para salir del problema es crear una variable que cuente los datos leídos y en base a esa dentro de un ciclo for vas aumentando los renglones. Hacerlo de forma segura y formal será con un feof o malloc.
Saludos.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
duda matrices dinámicas multidimencionales
Programación Visual Basic
|
:matux:
|
1
|
1,900
|
20 Agosto 2007, 14:03 pm
por :matux:
|
|
|
Duda acerca de como pasar por referencia matrices dinamicas?
Programación C/C++
|
xuhipoint
|
6
|
5,400
|
11 Mayo 2014, 22:59 pm
por xuhipoint
|
|
|
(Problema)Matrices Dinámicas de Caracteres!
Programación C/C++
|
Reynega
|
4
|
4,806
|
6 Marzo 2015, 18:33 pm
por avesudra
|
|
|
Matrices dinámicas
Programación C/C++
|
MPLS
|
3
|
2,235
|
4 Noviembre 2015, 04:31 am
por crack81
|
|
|
suma de dos matrices dinamicas con punteros
Programación C/C++
|
piyor6
|
2
|
5,613
|
6 Mayo 2018, 17:27 pm
por piyor6
|
|