Menú

Mostrar Mensajes

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ú

Mensajes - Sagrini

#91
Programación C/C++ / Re: Ayuda con programa en c
28 Diciembre 2011, 13:17 PM

area=(basemayor+basemenor)*altura/2;


1. Los corchetes sobran.
2. Lo que hay que hacer es poner el código entre el "[c0de]" y el "[/c0de]" (sustituye el 0 por una o.)
#92
Programación C/C++ / Re: Fgets para enteros?
28 Diciembre 2011, 12:48 PM
Mmm... me quedo con la primera opción. Ahora, y para obtener un solo carácter? Porque fgetc () no me funciona!
#93
Programación C/C++ / Re: Duda con variables
28 Diciembre 2011, 12:42 PM
Mmm, cierto... como he dicho todos estamos para aprender jajaja Ya he modificado, eso me pasa por las prisas :-[
#94
Programación C/C++ / Re: Duda con variables
27 Diciembre 2011, 23:28 PM
Ya que estamos "para aprender", voy a criticar yo también jajaja (@Ferno es brooooma...)
Ahora, os corrijgo a todos:

#include <stdio.h>

int main ()
{
int num1 = 1212, num2 = 1213;
printf ("%d+%d=%d\n", num1, num2, num1+num2);
return 0;
}


1. No tenéis por que incluir "stdlib.h" cuando no se está usando en el programa.
2. "main ()", "void main ()", "int main (void)" no son correctos (el último sería aceptable, pero no suele usarse).
3. "int main (int argc, char *argv [])". Es lo más correcto, pero lo que hay entre paréntesis puede suprimirse si no es usado en el programa.
4. Nombres de variables muy largos entorpecen la programación, y no es agradable tratar con nombres muy largos.
5. No es necesario declarar una variable para almacenar un valor que sólo será usado una vez. Es ridículo.
6. "return" a secas es correcto sólo cuando la función el la que está se ha declarado con un "void", lo cual no está bien en el caso de "main ()".
7. "system ("PAUSE")" es horrible, nunca debe usarse. En caso de que uséis un entorno de programación gráfico usad "getchar ()"o similares, pero nunca uséis "system ()" si no es estrictamente necesario. Por algo siempre se recomienda programar desde una terminal a no ser que la salida sea gráfica (trabajar desde terminal es muchísimo más cómodo, directo, práctico y rápido).
8. Pedir paz en un foro público es ridículo. Por favor. Si quieren decir tonterías, ¡adelante!
9. Esa ortografía...

Sin rencor ;)
#95
Por cierto, he "reescrito" la pregunta por completo. Alguna idea? ;)
Un saludo! Sagrini
#96
Hola! Os cuento: Hace poco me hice con el control de mi nuevo Guadalinex, y me puse a actualizar y instalar paquetes. No sé a partir de qué momento me empezó a dar error en todas las tareas que hacía con paquetes. Al pedir más detalles me decía que el paquete firefox-cgaconfig estaba roto, muy inconsciente, y que tenía que reinstalarlo para continuar. Al darme este error todas las tareas que hacía fallaban. Ahora, al ir a reinstalar el paquete en cuestión me decía exactamente lo mismo (el paquete está inconsciente, debe reinstalarlo):

root@pc11-1:/home/juanra# apt-get remove firefox-cgaconfig
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias       
Leyendo la información de estado... Hecho
Se instalaron de forma automática los siguientes paquetes y ya no son necesarios.
  acroread-escript acroread-doc-es acroread-plugins acroread-l10n-es
  mozilla-acroread acroread acroread-dictionary-es acroread-debian-files
Utilice «apt-get autoremove» para eliminarlos.
Los siguientes paquetes se ELIMINARÁN:
  firefox-cgaconfig
0 actualizados, 0 se instalarán, 1 para eliminar y 0 no actualizados.
1 no instalados del todo o eliminados.
Se liberarán 184kB después de esta operación.
¿Desea continuar [S/n]? S
dpkg: error al procesar firefox-cgaconfig (--remove):
El paquete está en un estado muy malo e inconsistente - debe reinstalarlo
antes de intentar desinstalarlo.
Se encontraron errores al procesar:
firefox-cgaconfig
E: Sub-process /usr/bin/dpkg returned an error code (1)

Ahora, he probado a hacer:

apt-get -f install
Synaptic>Arreglar paquetes rotos
Actualización parcial
Reinstalar/instalar/eliminar paquete firefox-cgaconfig
Reinstalar/instalar/eliminar firefox-cgaconfig*.dev (descargado desde web "oficial" de Guadalinex)
...


Ahora, sin llegar al formateo (etc...), como puedo eliminar/reinstalar completamente el paquete firefox-cgaconfig por completo?
Un saludo y feliz año nuevo! Gracias! Sagrini
#97
Bugs y Exploits / Re: Duda sobre buffer overflow
23 Diciembre 2011, 17:12 PM
Eso es que no has sobreescrito la dirección correcta. Corre desde GDB y mira el error que te da ;)
$ gdb -q code
(gdb) r $(perl -e 'print "..."')
...
(gdb)
Ponme la salida ;)
#98
Bugs y Exploits / Re: Duda sobre buffer overflow
23 Diciembre 2011, 16:56 PM
Un último detalle sería decir que para comprobar si funciona correctamente, sería mejor declarar una función que no se llamase en el programa, y hacer que se ejecute con el retorno. P. ej:
1. Dirección de func_oculta () = 0x08005f32
2. Ret-Buff = 32
$ perl -e 'print "\x90"x32 . "\x32\x5f\x00\x08"'

Hey Iván! Que tal? ;)
#99
Programación C/C++ / Re: ¿Socket cerrado?
23 Diciembre 2011, 16:52 PM
Mmm... creo que el problema está en la línea de "while (cont != -1)", que no debería ser -1. Prueba a ver con otros valores que no sean -1 :P Ni idea!
#100
Easy. Si abres un fichero con "r" y escribes, te da segmentation fault.