Autor
|
Tema: Funcion impresa (Leído 2,764 veces)
|
iAmChapin_
Desconectado
Mensajes: 24
|
Buenas! Vengo a molestar nuevamente. Tengo este código y funciona a la perfección, pero me di cuenta de un error en la funcion, al principio era tipo int y returnaba el valor de la variable a, pero al hacer eso me imprimia el numero ingresado, decidi convertirlo a tipo void que no devuelve nada y me salta un error molesto en la linea 82: Illegal structure operation. Pensé que era porque estaba todo junto pero no, aun separandolo por lineas diferentes, siempre me indica el error en el esas lineas, y aun cambiando los ; por << siempre salta uno que otro error. Alguien podria darme una solucion sin que la funcion no devuelva nada? Les dejo el codigo para que puedan ver que pueden cambiar #include <iostream.h> #include <conio.h> #include <windows.h> //FUNCION TRANSFORMAR FECHA void fechaTransformada(int a){ //DETERMINAMOS EL MES INGRESADO CON SWITCH switch(a){ case 1: textcolor(15); cprintf("Enero"); break; case 2: textcolor(15); cprintf("Febrero"); break; case 3: textcolor(15); cprintf("Marzo"); break; case 4: textcolor(15); cprintf("Abril"); break; case 5: textcolor(15); cprintf("Mayo"); break; case 6: textcolor(15); cprintf("Junio"); break; case 7: textcolor(15); cprintf("Julio"); break; case 8: textcolor(15); cprintf("Agosto"); break; case 9: textcolor(15); cprintf("Septiembre"); break; case 10: textcolor(15); cprintf("Octubre"); break; case 11: textcolor(15); cprintf("Noviembre"); break; case 12: textcolor(15); cprintf("Diciembre"); break; } } int dia; int mes; int cuatro; void main(){ gotoxy(6,4); cprintf("Transformo tu fecha de este tipo: 4/07/2011 asi: 4 de Julio del 2011"); textcolor(15); gotoxy(29,5); cprintf("Ingresa una fecha:"); textcolor(15); gotoxy(33,7); cprintf("/"); textcolor(15); gotoxy(38,7); cprintf("/"); gotoxy(30,7); cin >> dia; gotoxy(35,7); cin >> mes; gotoxy(40,7); cin >> cuatro; textcolor(15); gotoxy(26,9); cprintf("La fecha transformada es:"); textcolor(15); gotoxy(27,11); cout << dia; cprintf(" de "); cout << fechaTransformada(mes); cprintf (" del "); cout << cuatro; getch(); }
|
|
« Última modificación: 1 Septiembre 2015, 00:49 am por iAmChapin_ »
|
En línea
|
|
|
|
Stakewinner00
|
Varias cosas. 1. No existe la lib iostream.h, es "iostream" (sin el .h) ya que las librerías estándar de C++ no acaban en .h 2. la función main debería devolver un int (que usualmente indica si el programa finalizo exitosamente o no) 3. cout << fechaTransformada(mes) cout no puede imprimir por pantalla una función que no devuelve dato, justamente por eso. Si la función devuelve nada como va a imprimir algo?. En todo caso podrías llamar a la función tal cual. "fechaTranformada(mes)" 4. No tendrían que haber variables globales Con estos cambios el código final vendría a ser algo como #include <iostream> #include <conio.h> #include <windows.h> using namespace std; //FUNCION TRANSFORMAR FECHA void fechaTransformada(int a){ //DETERMINAMOS EL MES INGRESADO CON SWITCH switch(a){ case 1: textcolor(15); cprintf("Enero"); break; case 2: textcolor(15); cprintf("Febrero"); break; case 3: textcolor(15); cprintf("Marzo"); break; case 4: textcolor(15); cprintf("Abril"); break; case 5: textcolor(15); cprintf("Mayo"); break; case 6: textcolor(15); cprintf("Junio"); break; case 7: textcolor(15); cprintf("Julio"); break; case 8: textcolor(15); cprintf("Agosto"); break; case 9: textcolor(15); cprintf("Septiembre"); break; case 10: textcolor(15); cprintf("Octubre"); break; case 11: textcolor(15); cprintf("Noviembre"); break; case 12: textcolor(15); cprintf("Diciembre"); break; } } int main(){ int dia; int mes; int cuatro; gotoxy(6,4); cprintf("Transformo tu fecha de este tipo: 4/07/2011 asi: 4 de Julio del 2011"); textcolor(15); gotoxy(29,5); cprintf("Ingresa una fecha:"); textcolor(15); gotoxy(33,7); cprintf("/"); textcolor(15); gotoxy(38,7); cprintf("/"); gotoxy(30,7); cin >> dia; gotoxy(35,7); cin >> mes; gotoxy(40,7); cin >> cuatro; textcolor(15); gotoxy(26,9); cprintf("La fecha transformada es:"); textcolor(15); gotoxy(27,11); cout << dia; cprintf(" de "); fechaTransformada(mes); cprintf (" del "); cout << cuatro; getch(); }
|
|
« Última modificación: 31 Agosto 2015, 02:45 am por Stakewinner00 »
|
En línea
|
|
|
|
iAmChapin_
Desconectado
Mensajes: 24
|
|
|
« Última modificación: 31 Agosto 2015, 02:51 am por iAmChapin_ »
|
En línea
|
|
|
|
|
|
|