elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 [9] 10 11 12 13 14 15 16 17 18 19 20 21 22
81  Programación / Programación C/C++ / Re: AYUDA C++ en: 26 Abril 2016, 16:43 pm
Con objetos todo es más fácil.... el código queda muy simple .. solo mirar el main()  ;)

Si queremos crear el menu de empresas tecnologicas:

Código
  1. Menu m = Menu("OS");
  2. m.set_option("Windows");
  3. m.set_option("Mac OS");
  4. m.set_option("Linux");
  5.  

O..

Código
  1.  
  2. Menu m;
  3. m.set_title("OS");
  4. m.set_option("Windows");
  5. m.set_option("Mac OS");
  6. m.set_option("Linux");
  7.  

Por supuesto el titulo es opcional, pero especificar las teclas asignadas a cada opcion a veces no es opcional:


Código
  1. Menu m = Menu("Frutas");
  2. m.set_option("Mango");
  3. m.set_option("Mandarina",'N');
  4. m.set_option("Manzana",'A');
  5. m.set_option("Peras");
  6.  

y nada quita que uses numeros como letras:

Código
  1. Menu m = Menu("Frutas");
  2. m.set_option("Mango",'1');
  3. m.set_option("Mandarina",'2');
  4. m.set_option("Manzana",'3');
  5. m.set_option("Peras",'4');
  6.  

He habilitado 3 modos distintos de "enumeracion" a saber : NUMERICO, ALFABETICO y AUTO; se eligen en el constructor

Dejo el codigo completo aqui
82  Programación / Programación C/C++ / Re: AYUDA C++ en: 26 Abril 2016, 01:57 am
Creo que no me entiendes @MAFUS  :huh:

Citar
C:\C>menu_mafus

Elija fabricante :

     1. Microsoft
     2. Apple
     3. Linux

    Opcion >> 0
*** OPCION INCORRECTA ***

Elija fabricante :


    Opcion >>

*** OPCION INCORRECTA ***

Elija fabricante :


    Opcion >>

*** OPCION INCORRECTA ***

Cual se supone es la forma de salir de ahi ? y si sales .... entonces que asignas cuando haces....

Código
  1. fabricante = fabricantes[respuesta];  
  2.  

Basura ? accedes con cualquier banana a un array fabricantes ?  :silbar:
(en caso de que puedas salir, claro)


Como te decia.... es facil cambiar eso: tienes que tener una opcion que sea de salida y ademas tienes que acceder a un array primero habiendo chequeado el indice es valido
83  Programación / Programación C/C++ / Re: AYUDA C++ en: 26 Abril 2016, 01:42 am
Como sale tu programa (de un bucle infinito de opciones) de un menu o un submenu ?

No hay una opcion 'salir' que serviria para salir de un sub-menu o salir del programa segun donde te encuentres. Tu programa solo puede ir en una dirección y asi no funciona ningun sistema.

Pero no lo tomes a mal, es solo un detalle que puedes arreglar en 1 o 2 linea seguro.
84  Programación / Programación C/C++ / Re: AYUDA C++ en: 26 Abril 2016, 01:27 am
Código
  1.  
  2. respuesta = menu("Elija fabricante", NULL, fabricantes);
  3. fabricante = fabricantes[respuesta];
  4.  

El problema de esa implementacion @MAFUS es que no tienes una forma de salir de esos bucles, por lo demas muy bien.
85  Programación / Programación C/C++ / Re: Problema accediendo a puntero de matriz bidimensional, ¿Como hago esto....? en: 25 Abril 2016, 18:38 pm
Perfecto, ahi va  ;D
86  Programación / Programación C/C++ / Re: Problema accediendo a puntero de matriz bidimensional, ¿Como hago esto....? en: 25 Abril 2016, 18:11 pm
Reservas espacio para solo una instancia del struct:

Código
  1. Sletras[0].caracteres=(Acaracteres *)malloc(sizeof(Acaracteres));

cuando si N contiene la cantidad que quieres reservar en un comienzo, debes hacer:

Código
  1. Sletras[0].caracteres=(Acaracteres *)malloc( N * sizeof(Acaracteres));


Obviamente queda pendiente arregles el como accedes al interior de tu struct pero la sintaxis no es la correcta porque se te olvida que Acaracteres tiene letra y debes acceder a ese miembro ya sea como:  (*puntero_a_struct).letra ó puntero_a_struct->letra


PD: con el programa completo podria ver si logro que compile
87  Programación / Programación C/C++ / Re: Problema accediendo a puntero de matriz bidimensional, ¿Como hago esto....? en: 25 Abril 2016, 17:33 pm
Bueno amigo con malloc() estas reservando espacio para un puntero simple pero luego lo quieres acceder como si tuviera mas dimensiones:

Código
  1. Sletras[0].caracteres[cuenta][sigcar]=0;

Sino me equivoco, estas usando un indice de mas ([sigcar]) y justamente por eso te dice esto:

Citar
no match for 'operator[]' in

88  Programación / Programación C/C++ / Re: Problema accediendo a puntero de matriz bidimensional, ¿Como hago esto....? en: 25 Abril 2016, 16:18 pm
Para no caer en un "problema XY", dinos mejor QUE QUIERES LOGRAR con IniLetra8x8()

Te aclaro que si hay una matriz de tamaño fijo (8x8) no tiene sentido que la crees con punteros, no hay el "ahorro" (que existe cuando haces una matriz mas grande por si las dudas)

Por otro lado si IniLetra8x8() maneja una matriz de tamaño variable en filas o columnas, no deberia llamarse asi.



EDIT: no sabia lo que querias hacer...... lo siento
89  Programación / Programación C/C++ / Ayuda con menus de opciones en C/C++ en: 25 Abril 2016, 04:02 am
Hay un tema con un pin sobre menus, sin embargo te voy a dar una respuesta:

Puedes hacer algo muy simple asi:

Código
  1. #include <iostream>
  2. #include <conio.h>
  3.  
  4. using namespace std;
  5.  
  6. int main(){
  7. char op[2];
  8.  
  9. while (op[0]!='0'){
  10. cout << "TIPO DE FABRICANTE" << endl
  11. << "================" << endl
  12. <<  "1. Microsoft"  << endl
  13. <<  "2. Apple" << endl
  14. <<  "3. Linux" << endl << endl
  15. << "Ingrese su Opcion: ";
  16. cin >> op;
  17.  
  18. printf ("\nHas seleccionado %c\n\n",op[0]);
  19. getchar();
  20. }
  21.  
  22. getchar();
  23. return 0;
  24. }
  25.  

90  Programación / Programación C/C++ / Re: Forward declaration generator en: 24 Abril 2016, 15:52 pm
Gracias fary,..... me aburre un poco el tema de las expresiones regulares asi que si quieres sacarme el tema de encima en Perl estaria perfecto  ;D

Páginas: 1 2 3 4 5 6 7 8 [9] 10 11 12 13 14 15 16 17 18 19 20 21 22
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines