Pregunta: | 53681 - COMO USAR | PARA OPCIONES DE UNA FUNCION |
Autor: | Harold Puentes |
Que tal maestros del C
Si alguno de ustedes sabe como se crea un funcion que pueda recibir y validar diferentes opciones separadas por |, por ejemplo asi como funciona un MessageBox del API de windows que para darle las opciones para que muestre los botones si no cancelar, uno le envia MB_YESNOCANCEL | MB_ICONEXCLAMATION | MB_DEFBUTTON3 , enton seria algo si como enum opciones{ OP1=2, OP2=4, OP3=8 } /*declaracion */ int MiFuncion( opciones misop ); /* llamado*/ MiFuncion( OP1 | OP2 | OP3 ); /*Implementacion*/ int MiFuncion( opciones misop ){ ???? ???? ???? //Como seria en esta funcion?? } Si alguno ha hecho una funcion de este tipo o sabe como hacerlo, le agradeceria mucho que me compartiera el conocimiento Gracias ;-) |
Respuesta: | Caleb G.J. |
hay varias maneras de hacer lo que deseas.... este es solo una forma.
solo un ejemplo.. #define OP1 1 #define OP2 2 #define OP3 4 #define OP4 8 int MiFuncion(int op ); void main() { int r; r = MiFuncion(OP3 | OP4 | OP2); } int MiFuncion(int op ) { int opcion[]={0,0,0,0}; if(op & 0x1) opcion[0]=1; else opcion[0]=0; if(op & 0x2) opcion[1]=1; else opcion[1]=0; if(op & 0x4) opcion[2]=1; else opcion[2]=0; if(op & 0x8) opcion[3]=1; else opcion[3]=0; return op; } |