Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes MenúCita de: Adri124 en 12 Octubre 2010, 12:13 PM
No había caido en eso!! salta a la ultima posicion si pones 012345678!! tambien he pensado que este problema venga precisamente de que se trabaja con caracteres y haya que limitarlos con /0 pero ni idea...
Tambien acabo de probar a hacer la tabla con strings (una locura) y el programa revienta por todas partes, no hay forma
Lh: No hagas doble post, utiliza el botón modificar.
Ya está resuelto!!! al final el único misterio que tenía era el siguiente, por si alguna vez os pasa: antes del especificador de formato %c del scanf hay que dejar un espacio, para indicarle que no coja espacios (me estaba inundando de espacios el tablero y se descolocaba), quedando al final así: scanf(" %c", &valor[0]);
Cita de: do-while en 12 Octubre 2010, 10:57 AM
¡Buenas!
Olvidate de ese libro. Tiene elementos ajenos al estandar ANSI C. El la sección de libros y papers, tienes libros de Deitel & Deitel que te vendran bien.
Por cierto, en el libro de "Como programar en C/C++" de Deitel & Deitel (2ª edicion), la parte de C++ tampoco corresponde con el estandar actual. Bajate el de "Como programar en C,C++ y Java", que ese si que sigue los estandares.
¡Saludos!
/* PRINT_IT.C- Este programa imprime un listado con numeros de linea*/
#include <stdio.h>
void do_heading(char *filename);
int line, page;
main(int argv, char *argc[])
{
char buffer[256];
FILE *fp;
if (argv < 2)
{
fprintf(stderr, "\nProper usage is: ");
fprintf(stderr, "\n\nPRINT_IT filename.ext\n");
exit(1); //Primer error
}
if ((fp = fopen(argc[1], "r")) == NULL)
{
fprintf(stderr, "Error opening file, %s!", argc[1]);
exit(1);
}
page = 0;
line = 1;
do_heading (argc[1]);
while (fgets(buffer, 256, fp) != NULL)
{
if(line % 55 == 0)
do_heading(argc[1]);
fprintf (stdprn, "%4d:\t%s", line++, buffer);
}
fprintf(stdprn, "\f");
fclose(fp);
return 0;
}
void do_heading(char *filename)
{
page++;
if (page > 1)
fprintf(stdprn, "\f");
fprintf(stdprn, "Page: %d, %s\n\n", page, filename);
}
FILE *stdprn;
stdprn = fopen("LPT1", "w");
Citar7. Teclee y compile el siguiente programa. Este programa puede usarse para imprimir sus listados. Si se tiene errores, asegúrese de haber tecleado el programa correctamente.
El uso de este programa es PRINT_IT nombre de archivo.ext donde nombre de archivo.ext es el nombre del archivo fuente junto a su extensión. Observe que este programa añade números de línea al listado. (No se preocupe por la longitud de este programa; no espero que lo entienda todavía. Se incluye aquí para ayudarle a comparar las impresiones de sus programas con las que se dan en el libro.)
Cita de: Adri124 en 12 Octubre 2010, 00:11 AM
Hola, uso el compilador del codeblocks en windows, el GCC adaptado a windows.
Cita de: Adri124 en 11 Octubre 2010, 22:14 PM
por curiosidad he probado con tabla (dos dimensiones) y tampoco