• Martes 5 de Noviembre de 2024, 17:43

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 - desorden

Páginas: [1] 2 3
1
C/C++ / Re: Creación De Archivos .h
« en: Sábado 27 de Marzo de 2004, 00:11 »
Hacer una libreria, biblioteca o como queráis llamarlo no es tan sencillo y depende mucho del sistema y compilador donde trabajes.

Los archivos .h sólo deben incluir definiciones de constantes, prototipos de funciones, definiciones de estructuras de datos, etc. No se debe incluir código "ejecutable" en ellos.

En esta página www.geocities.com/chuidiang/herramientas/librerias.html se explica como se crean bibliotecas en linux. Si entiendes los conceptos, solamente tendrás que adaptar las instrucciones que se dan allí a tu sistema y compilador.

Un saludo...

2
C/C++ / Re: Evitar Echo Del Teclado
« en: Miércoles 24 de Marzo de 2004, 12:28 »
Una manera estándar no existe. Tienes dos opciones:
  • Implementar tú mismo la función en linux. Tienes que dominar el manejo de funciones como tcgeattr, tcsetattr, read, select...</li>
  • Usar la implementación de otra persona. Existe una versión de la biblioteca conio para sistemas basados en unix llamada uconio.</li>
Un saludo...

3
C/C++ / Re: Presione Cualquier Tecla Para Continuar....
« en: Martes 23 de Marzo de 2004, 02:35 »
Claro que no es estándar :), niguna de las soluciones que se han dado lo es. El estándar de C no dice en ningún sitio que la salida tenga que ser a una pantalla.

Imaginad que la salida se hace a algun tipo de impresora, con la solución de las líneas en blanco (¿cuántas líneas? ¿20? ¿50? ¿500?) no ganaríamos para papel :P

Un saludo...

4
C/C++ / Re: Pasar Una Tabla A Un Procedimiento
« en: Lunes 22 de Marzo de 2004, 02:31 »
Puedes hacerlo pasando como parámetro el primer elemento de la tabla, pero de alguna manera tendrás que controlar cuando llegas al final. Por ejemplo, si en tus tablas almacenas números positivos, que el último elemento de cada una de ellas sea un número negativo.

Un saludo...

5
C/C++ / Re: Ayuda Urgente
« en: Domingo 21 de Marzo de 2004, 14:15 »
Si a los desarrolladores del kernel de linux no se les puede considerar serios...

grep -R  goto /usr/src/linux/

Más de 19000 goto -kernel 2.4.25-

Aunque te tengo que dar la razón en que el seguimiento del código en este caso es todo un reto ;)

Un saludo...

Pregunta: ¿Cómo se puede salir de dos o más bucles a la vez?

6
C/C++ / Re: Ayuda Urgente
« en: Sábado 20 de Marzo de 2004, 19:21 »
Una cosa es la teoría y otra muy distinta es la práctica en el mundo real.

La sentencia goto se usa y mucho. Podéis mirar cualquier código fuente de aplicaciones reales.

En Java, que es un lenguaje moderno, se pueden etiquetar los bucles para poder usar la instrucción break etiqueta para saltar entre ellos.

Un saludo...

7
C/C++ / Re: Presione Cualquier Tecla Para Continuar....
« en: Sábado 20 de Marzo de 2004, 13:52 »
Tambien puedes usar secuencias especiales de caracteres que define ANSI. La siguiente línea de código borra la pantalla:

printf("%c[2J", 27);

Para que funcione en sistemas Windows debes usar una terminal que soporte ANSI. Antiguamente estos códigos se cargaban con el archivo ANSI.SYS.

8
C/C++ / Re: Ayuda Urgente
« en: Sábado 20 de Marzo de 2004, 13:35 »
goto malo según para qué.

Desde luego en este caso su uso no está justificado.

Un saludo...

9
C/C++ / Re: Crear Directorio
« en: Miércoles 25 de Febrero de 2004, 23:33 »
¿Qué error se produce cuando lo ejecutas?

Un saludo...

10
C/C++ / Re: Alguna Alternativa Al System???
« en: Miércoles 18 de Febrero de 2004, 02:11 »
Existen alternativas a la función system pero depende de la plataforma sobre la que programes.

Puedes probar algunas funciones de string.h.

Código: Text
  1.  
  2. #include &#60;stdio.h&#62;
  3. #include &#60;stdlib.h&#62;
  4. #include &#60;string.h&#62;
  5.  
  6. int main(void)
  7. {
  8.         char ip[] = &#34;foros.solocodigo.com&#34;;
  9.         char comando[] = &#34;ping&#34;;
  10.         char orden[50];
  11.  
  12.         strcpy(orden, comando);
  13.         strcat(orden, &#34; &#34;);
  14.         strcat(orden, ip);
  15.         system(orden);
  16.         return 0;
  17. }
  18.  
  19.  

Un saludo...

11
C/C++ / Re: Modificando Una Cadena
« en: Sábado 14 de Febrero de 2004, 03:58 »
ToTeX, ¿has compilado y ejecutado el código de tu mensaje? ¿modifica(k) provoca un error en tiempo de ejecución?  &lt;_&lt;

Un saludo...

12
C/C++ / Re: Modificando Una Cadena
« en: Viernes 13 de Febrero de 2004, 16:11 »
Cita de: "ToTeX"
   modifica(k); //Error! k no es un puntero inicializado
Es un error porque no sabes que zona de memoria estás modificando, pero no provoca un error en ejecución.

Yo creo que el problema se encuentra en como se ha inicializado el puntero.
Código: Text
  1.  
  2. #include &#60;stdio.h&#62;
  3.  
  4. int main(void)
  5. {
  6.    char cadena[] = &#34;hola&#34;;
  7.    char *puntero;
  8.  
  9.    puntero = cadena;
  10.    printf(&#34;%c&#34;, *puntero);
  11.    (*puntero)++;
  12.    printf(&#34;%c&#34;, *puntero);
  13.    return 0;
  14. }
  15.  
  16.  
En cambio:
Código: Text
  1.  
  2. #include &#60;stdio.h&#62;
  3.  
  4. int main(void)
  5. {
  6.    char *puntero = &#34;hola&#34;;
  7.  
  8.    printf(&#34;%c&#34;, *puntero);
  9.    (*puntero)++;
  10.    printf(&#34;%c&#34;, *puntero);
  11.    return 0;
  12. }
  13.  
  14.  
Provoca el error. En este ejemplo, puntero apunta a una zona de memoria de solo lectura.

Un saludo...

13
C/C++ / Re: Modificando Una Cadena
« en: Miércoles 11 de Febrero de 2004, 01:41 »
¿Cómo has inicializado la cadena?

Un saludo...

14
C/C++ / Re: Creación De Ficheros En C++
« en: Miércoles 4 de Febrero de 2004, 13:47 »
El programa funciona. Guarda los números en un archivo hasta que introduzcas el 0.

Un saludo...

15
C/C++ / Re: Cronómetro De Precisión
« en: Martes 3 de Febrero de 2004, 19:54 »
La función clock_gettime -man clock_gettime- muestra nanosegundos.
También podéis probar con times, gettimeofday, etc...

Un saludo...

16
C/C++ / Re: Funcion Dado
« en: Martes 3 de Febrero de 2004, 17:12 »
Busca información sobre la función kbhit(). La implementaban los antiguos compiladores de Borland en la biblioteca dos.h y DJGPP en pc.h.
Aunque solo te servirá si trabajas sobre DOS.

Un saludo...

17
C/C++ / Re: TAD
« en: Lunes 2 de Febrero de 2004, 04:57 »
Prueba ésto:
Código: Text
  1.  
  2. gcc areas.o prueba.o
  3.  
  4.  

18
C/C++ / Re: Creación De Ficheros En C++
« en: Domingo 1 de Febrero de 2004, 15:21 »
El modo app trata de encontrar el final del flujo de datos antes de cada operación de salida. Tienes que señalar el flujo de datos como de salida:

Código: Text
  1.  
  2. #include &#60;iostream&#62;
  3. #include &#60;fstream&#62;
  4.  
  5. int main()
  6. {
  7.    std::fstream fichero;
  8.  
  9.    fichero.open(&#34;uno.txt&#34;, std::ios::out | std::ios::app);
  10.    if (fichero.fail())
  11.       std::cout &#60;&#60; &#34;no&#34;;
  12.    return 0;
  13. }
  14.  
  15.  

Un saludo...

19
C/C++ / Re: Demasiados Warnings
« en: Martes 20 de Enero de 2004, 14:18 »
El prototipo de fgetc() es:

Código: Text
  1.  
  2. int fgetc(FILE *stream);
  3.  
  4.  

Así que devuelve int no char.

Un saludo...

20
Retos / Re: Los gatos en el sombrero
« en: Jueves 2 de Octubre de 2003, 15:45 »
mmmmm

pues eso, ¿no?

 
Código: Text
  1.  
  2. gatos  altura
  3.    G      64
  4.    G      32
  5.    G      16  
  6.    G       8  
  7.    G       4  
  8.    G       2
  9.    G       1
  10.  
  11.  

Gatos que no trabajan: 6.
Altura del conjunto: 127.

21
Retos / Re: Los gatos en el sombrero
« en: Jueves 2 de Octubre de 2003, 01:50 »
Yo no he podido incluir el caso de un gato trabajando, así que lo consideraba a parte:P

Para 64 1, la solución buena es 6 127.

¿Para cuándo el próximo reto?

22
C/C++ / Re: gets(cadena) de otra manera
« en: Miércoles 1 de Octubre de 2003, 14:22 »
Una solución:
 
Código: Text
  1.  
  2. scanf("%sn", palabra);
  3. scanf("%[^n]", cadena);
  4.  
  5.  
Otra:
 
Código: Text
  1.  
  2. scanf("%s", palabra);
  3. getchar();
  4. scanf("%[^n]", cadena);
  5.  
  6.  
Un saludo...

23
C/C++ / Re: gets(cadena) de otra manera
« en: Miércoles 1 de Octubre de 2003, 01:37 »
Una manera sencilla de simular gets(cadena_con_espacios)  es:
 
Código: Text
  1.  
  2. scanf("%[^n]", cadena_con_espacios);
  3.  
  4.  

Un saludo...

24
Retos / Re: Los gatos en el sombrero
« en: Lunes 29 de Septiembre de 2003, 22:51 »
No va más:)

Sueño con gatos y sombreros:P

Con esta entrada:
 
Código: Text
  1. gato.in
  2. 3112136 3048625
  3. 13 12
  4. 64 1
  5. 28561 20736
  6. 3048625 2985984
  7. 37015056 35153041
  8. 9 4
  9. 16 9
  10. 216 125
  11. 6561 4096
  12. 4913 4096
  13. 729 512
  14. 289 256
  15. 117649 110592
  16. 5764801 1679616
  17. #
  18.  
Esta salida:
 
Código: Text
  1. gato.out
  2. 21171 12321231
  3. 1 25
  4. 6 127
  5. 1885 122461
  6. 20881 12068929
  7. 462540 180390211
  8. 3 19
  9. 4 37
  10. 31 671
  11. 585 26281
  12. 273 17985
  13. 73 2465
  14. 17 817
  15. 2353 456385
  16. 335923 30275911
  17.  

25
Retos / Re: Los gatos en el sombrero
« en: Lunes 29 de Septiembre de 2003, 15:19 »
Otro intento. Creo que está bien. Aunque es muy lento.

Páginas: [1] 2 3