• Viernes 17 de Abril de 2026, 12:22

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - nachete222

Páginas: [1]
1
C/C++ / Re: señal EOF
« en: Viernes 5 de Septiembre de 2008, 17:37 »
Gracias por la aportacion chuidiang

Efectivamente lo de 'n' solo me da de margen una linea
muy buena idea lo de que sean dos nn, me lo apunto y lo probaré

Gracias de nuevo

Editado:
Ctrl+D  También funciona con la primera versión (parece ser que así si llega la señal EOF)

2
C/C++ / Re: señal EOF
« en: Viernes 5 de Septiembre de 2008, 17:30 »
Citar
Citado por m0skit0
Te aconsejo que la cambies por "n"

Hombre asi si, esto ya es otra cosa  :D

El programa al final queda asi:

#include <stdio.h>
/* count lines in imput,2º version */
main()
{
double nc;
for (nc = 0; getchar() != 'n'; ++nc)
;
printf("%.0fn", nc);
}

Salida de Terminal:
[n@localhost Programacion]$ gcc -o CuentaCaracteres CuentaCaracteres.c
[n@localhost Programacion]$ ./CuentaCaracteres
prueba de conteo de caracteres
31
[n@localhost Programacion]$

3
C/C++ / Re: señal EOF
« en: Viernes 5 de Septiembre de 2008, 17:03 »
Citar
Citado por: chuidiang
Normalmente la stdin no tiene EOF

En linux, con las ultimas versiones de GCC al menos, si. Aunque aun no entiendo muy bien como funciona, se supone que es para los arachivos, para detectar el final de estos (EOF= End Of File) y tiene un valor numerico equivalente a -1 esta definido en el stdio.h, si no fuese así daria un error al compilar.

Citar
Citado por: m0skit0
EOF no es char, es int, por lo tanto jamás podrá corresponder a una tecla del teclado.

algo me estaba temiendo ya, aunque solo sea por que había tocado ya todas las teclas incluso en conbinaciones de hasta 10 dedos, (ya estaba a punto de intentar añadir los de los pies)

Efectivamente parando el proceso (yo lo hacia con control+c ) se sale en mitad del bucle y no impime los resultados

Este ejemplo viene en un libro que estoy siguiendo, habla de Ansi C de Kernighan y Ritchie y no se que gaitas pero suena a antiguo, es posible que no se escriba ya de esa forma ??

Gracias a ambos por las respuestas,
Un saludo

4
C/C++ / señal EOF
« en: Jueves 4 de Septiembre de 2008, 04:13 »
Hola,

Estoy empezando con unos programas muy basicos en C, tengo uno que supuestamente realiza un conteo de caracteres
el programa es este:

Citar
#include <stdio.h>

/* count lines in imput,2º version */
main()
{

   double nc;

   for (nc = 0; getchar() != EOF; ++nc)
            ;
   printf("%.0fn", nc);
}

lo he compilado sin problemas, pero no consigo que llegue al final e imprima los caracteres que ha contado
la pregunta es ¿como consigo la señal EOF en una consola de linux para que el programa salga del bucle
y que imprima el resultado?

gracias de antemano

Páginas: [1]