SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: Luchingador en Jueves 14 de Junio de 2007, 17:23

Título: Ayuda, Hacer Programa De Dibujo
Publicado por: Luchingador en Jueves 14 de Junio de 2007, 17:23
Buenas.

Bueno, me asignaron la tarea de hacer un programa de dibujo.

Mis problemas llegan cuando estoy haciendo el guardado, pense en hacer una matriz del tamaño de la pantalla y despues guardar esa matriz en un archivo binario, pero no se como guardar una matriz en un archivo binario.

Si tienen mejores ideas, por favor.

Luchingador.
Título: Re: Ayuda, Hacer Programa De Dibujo
Publicado por: Eternal Idol en Jueves 14 de Junio de 2007, 18:25
Abrir archivo, escribir archivo, cerrar archivo. Para eso podes usar fopen/fwrite/fclose.
Título: Re: Ayuda, Hacer Programa De Dibujo
Publicado por: Luchingador en Jueves 14 de Junio de 2007, 18:52
a claro.

el problema es como, de abrirlo lo abro ya.

como esbribo en el?

fwrite(&mat

en un doble for que haga avanzar el "x" y el "y"??

Gracias.
Título: Re: Ayuda, Hacer Programa De Dibujo
Publicado por: Eternal Idol en Jueves 14 de Junio de 2007, 19:34
Lo podes hacer con un solo fwrite pasandole la direccion de comienzo del buffer y el tamaño total del mismo.
Título: Re: Ayuda, Hacer Programa De Dibujo
Publicado por: Luchingador en Jueves 14 de Junio de 2007, 21:37
Antes que nada gracias por la atencion.

esto va a sonar muy estupido, pero, como?

lo siento no llevo mucho programando.
Título: Re: Ayuda, Hacer Programa De Dibujo
Publicado por: TRod en Jueves 14 de Junio de 2007, 22:02
Cita de: "Luchingador"
como esbribo en el?

fwrite(&mat
  • [y],0,1,arch)??????


en un doble for que haga avanzar el "x" y el "y"??

Juega un poco con lo que tu mismo has propuesto, vas bien.
Título: Re: Ayuda, Hacer Programa De Dibujo
Publicado por: Luchingador en Jueves 14 de Junio de 2007, 22:56
Este es el programa que uso para el dibujo libre, mueve con los cursores imprime con Ñ y se supone que se sale con + pero al presionar + todo Borland C se colapsa(xD) es nuevo para mi.

Citar
#include <stdio.h>
#include <conio.h>
void main()
{
 FILE *arch;
 arch=fopen("nuevo.dat","w+b");
 char c='D';
 char mat[25][19];
 int tecla,x=40,y=12,a,b;
 unsigned int pre;
 while(tecla!=43)
 {
  pre=getch();
  if(!pre)
  {
   pre=getch();
  }
  tecla=pre;
  gotoxy(x,y);
  if(tecla==72)
  {
   y=y-1;
  }
  else
  {
   if(tecla==80)
   {
   y=y+1;
   }
   else
   {
   if(tecla==77)
   {
  x=x+1;
   }
   else
   {
  if(tecla==75)
  {
   x=x-1;
  }
  else
  {
   if(tecla==164)
   {
  printf("%c",c);
  mat
  • [y]=c;

   }
   else
   {
    gotoxy(10,23);
    printf("Usa las flechas de movimiento del teclado");
    x=40;
    y=12;
   }
  }
   }
       }
     }
   }
   for(a=0;a<=25;a++)
   {
   for(b=0;b<20;b++)
   {
  fwrite(&mat[a],a*b,1,arch);
   }
   }
 }
Título: Re: Ayuda, Hacer Programa De Dibujo
Publicado por: TRod en Viernes 15 de Junio de 2007, 04:38
Cita de: "Luchingador"
  fwrite(&mat[a],a*b,1,arch);
¿Crees que un compilador de 16 bits pueda manejar un char de (a*b)bytes ?
Yo creo que los de 32 tampoco...  :whistling:
Me imagino que ya entendiste el error. Suerte.
Título: Re: Ayuda, Hacer Programa De Dibujo
Publicado por: Luchingador en Viernes 15 de Junio de 2007, 17:26
Gracias, :ph34r:

Alguna sugerencia?  :P
Título: Re: Ayuda, Hacer Programa De Dibujo
Publicado por: TRod en Viernes 15 de Junio de 2007, 22:20
Tu programa me recordo una vieja utileria de Clipper que servia para diseñar pantallas.
Podias escoger caracteres, borrarlos, agregar colores, escribir un patron, eliminar filas, columnas, etc.   Todo esto, claro, en modo texto. Posteriormente el programa creaba un archivo .PGR donde se editaba automaticamente los @X,Y SAY '▓▓▓▓▓▓' (creo que asi era la sintaxis, no recuerdo)
Viejos tiempos... :rolleyes:
Saludos.
Título: Re: Ayuda, Hacer Programa De Dibujo
Publicado por: Luchingador en Lunes 18 de Junio de 2007, 16:20
por que al mandar a un procedimiento una matriz me lanza este error??

"Size of tipe is unknow or zero"