C/Visual C - Problemas al cerrar el fichero(fclose

   
Vista:

Problemas al cerrar el fichero(fclose

Publicado por Iñigo (1 intervención) el 29/10/2017 18:49:54
Tengo que hacer un programa que cree una matriz binaria y la meta en un fichero. La parte de crear el fichero y guardar la matriz funciona correctamente, pero falla al final con la función fclose. He mirado en diferentes páginas y foros y creo que en mi programa está igual. Pongo en negrita donde me falla;


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <stdio.h>
#include <stdlib.h>
#define FILAS  5
#define COLUMNAS  5
 
int main()
{
    FILE *texto;
    texto=fopen ("Primera_posicion.txt","w");
    int matriz[FILAS][COLUMNAS];
    int i, j;
    for (i=0; i<FILAS; i++)
    {
 
        for (j=0; j<COLUMNAS; j++)
        {
 
            matriz[i][j]=rand()%2;
        }
 
    }
 
    printf( "[FILAS]\n%i\n[COLUMNAS]\n%i\n[MATRIZ]\n", FILAS, COLUMNAS);
    fprintf(texto, "[FILAS]\n%i\n[COLUMNAS]\n%i\n[MATRIZ]\n", FILAS, COLUMNAS);
 
    for (i=0; i<FILAS; i++)
    {
 
        for (j=0; j<COLUMNAS; j++)
        {
            printf("%i", matriz[i][j]);
            fprintf(texto, "%i", matriz[i][j]);
        }
        printf("\n");
        fprintf(texto, "\n");
    }
    fclose(texto);
 
    if (fclose(texto))
        printf("\nproblemas al cerrar el fichero\n");
    return 0;
}



y este es el resultado que obtengo:

[FILAS]
5
[COLUMNAS]
5
[MATRIZ]
11001
00000
11111
11010
10010

problemas al cerrar el fichero

Process returned 0 (0x0) execution time : 2.205 s
Press any key to continue.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Problemas al cerrar el fichero(fclose

Publicado por Tom (561 intervenciones) el 30/10/2017 08:34:38
Un fichero solamente debes cerrarlo una vez.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Revisar política de publicidad