|
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 - lilezek
Páginas: [1]
1
« en: Viernes 18 de Junio de 2010, 21:11 »
Primero tienes que crear la implementación de la clase cola supongo: Aquí te dejo dicha implementación:
[...] Quizá la cola es un array de edades consecutivas en memoria. Si es así, simplemente haz el looping de for almacenando cada número en 3 vectores distintos.
2
« en: Lunes 14 de Junio de 2010, 16:46 »
Te lo he reestructurado un poquillo, y te he eliminado un puntero que era redundante en una función en la que realmente no necesitas puntero. El programa no funciona (no sé que es lo que intentas) pero compila, así que a partir de aquí deberías poder continuar. Por ejemplo, en la estructura NODO tienes una PILA*, pero PILA ya es un puntero pila*, entonces sería un pila**, cosa que no necesitas. #include<stdio.h> #include<stdlib.h> #include <time.h> FILE *dat; typedef struct pila { int codigo; char nombre[20]; struct pila *sig; }*PILA; struct NODO { PILA pila; struct NODO *next; }; NODO * CrearLista(PILA,NODO*); NODO * push(PILA*, NODO *); void MostrarLista(NODO*); void main(int argc,char ** argv) { int n,m,i; PILA p=NULL; NODO *head=NULL; dat=fopen("containers.txt", "r"); printf("Ingrese el numero de Pilas : "); scanf("%d", &m); system("cls"); printf("Ingrese el tamaño de las Pilas : "); scanf("%d", &n); for(i=0;i<m;i++) head=push(&p,head); if(!fclose(dat)) printf( "n<Fichero datos_secadoras.txt cerrado>n" ); else printf( "n<Error: datos_secadoras.txt NO CERRADO>n" ); MostrarLista(head); system("pause"); } NODO * push(PILA * pila, NODO *head) { PILA aux; aux = (PILA) malloc(sizeof(struct pila)); aux->sig = NULL; if(pila == NULL) { aux->codigo = rand(); fscanf( dat, "%sn", &aux->nombre); *pila = aux; printf("entro"); } else { aux->codigo = rand(); fscanf( dat, "%sn", &aux->nombre); aux->sig = *pila; *pila = aux; } return CrearLista(*pila,head); } NODO * CrearLista(PILA pila,NODO *head) { NODO *p,*r; p=head; if(head==NULL) { p=new(NODO); head=p; p->pila=pila; p->next=NULL; } else { while(p->next!=NULL) p=p->next; r=new(NODO); p->pila=pila; p->next=r; r->next=NULL; } return(head); } void MostrarLista(NODO *head) { int i=0; NODO *p; p=head; while(p != NULL) { printf("%dn%snn", p->pila->codigo, p->pila->nombre); p=p->next; } printf("NULLnn"); }
3
« en: Lunes 14 de Junio de 2010, 16:31 »
Tomas todos los números en un loop for y guardas en una variable vector las que vayan cumpliendo esa condición.
4
« en: Lunes 14 de Junio de 2010, 15:47 »
Pues creo que windows.h tiene definido FILE y sus funciones, iostream todas las funciones de input-output streamed, excepto _getch() que viene definido en conio.h
De todos modos si lo que vas a intentar es a manejar datos, mírate la API de SqlLite, conseguirás algo mucho mejor para tu proyecto (hazlo sólo si tienes tiempo antes de acabar el curso)
5
« en: Domingo 13 de Junio de 2010, 22:50 »
Principiante, ponle más empeño la próxima vez xD. Yo tengo 17 años y todo esto lo he aprendido teniendo paciencia, revisando muchos links y leyendo muchos documentos. Y después del consejo, la pregunta: No entiendo que intentas hacer. Pero creo que esto es lo que necesitas: #include <Windows.h> #include <iostream> #include <conio.h> typedef struct rutas { int codruta; char cadorigen[20]; char caddestino[20]; float distancia; } trut; void datos_ruta() { int cod=0; trut rutas; FILE *pfich; printf ("Introduzca el codigo de la ruta:"); scanf ("%i",&cod); pfich=fopen("c:\rutas.dat","r+"); if (pfich == NULL) { printf ("Se ha producido un error. Imposible abrir el fichero."); exit(1); } else { fread(&rutas,sizeof(trut),1,pfich); while (cod == rutas.codruta) { printf ("El código introducido ya existe."); printf ("Por favor, introduzca un código diferente:"); scanf ("%d",&cod); fseek(pfich,0,0); } printf ("INTRODUZCA:nn"); printf ("*Origen del viaje:"); scanf ("%s",&rutas.cadorigen); printf ("*Destino del viaje:"); scanf ("%s",&rutas.caddestino); printf ("*Distancia a recorrer:"); scanf ("%f",&rutas.distancia); system ("cls"); printf ("*La ruta ha sido creada correctamente*"); _getch(); rutas.codruta = cod; fwrite (&rutas, sizeof(trut),1,pfich); } fclose(pfich); } int main (int argc, char ** argv) { datos_ruta(); return 0; }
Si es esto, déjame un agradecimiento o algo xD. Saludos.
6
« en: Domingo 13 de Junio de 2010, 22:25 »
Buenos días a todos. Estoy haciendo una aplicación en c++, y esta aplicación embebe LUA y usa HGE. Mi aplicación consume , cada aproximadamente 5 segundos, 4 kb más. No es mucho, pero es. Y si aumento mi código de LUA esto empezará a chupar más y más rápido. Entonces, me gustaría que me dieran pautas para revisar mi código. Qué debería comprobar, si hay herramientas que me ayuden a comprobar que códigos comen más memoria ram. Utilizo Visual Studio 2010 Ultimate, bajo windows xp. Saludos y gracias. PD: Pondría vínculos a LUA y HGE pero no puedo
7
« en: Jueves 24 de Septiembre de 2009, 17:11 »
Hola. Tengo este código en visual c++: // Meto 9 espacios para que la línea // 18 coincida con mi línea (ya que no puse el principio del archivo). struct Calc { private: Ezek::Int64 __vbuffer1; Ezek::Int64 __vbuffer2; bool __vbuffer; gcroot<TextBox^> TBarraDeTexto; public: Calc(TextBox^ e) { TBarraDeTexto = e; __vbuffer = true; __vbuffer1 = Ezek::Int64(0); __vbuffer2 = Ezek::Int64(0); MaxNum = Ezek::Int64(0); }; ~Calc() { TBarraDeTexto.~gcroot(); } Ezek::Int64 MaxNum; void RefrescarBDT(TextBox^ TBarraDeTexto) { TBarraDeTexto->Text = vbuffer().ToString() + ","; } void InsertarNumero(int Numero, TextBox^ TBarraDeTexto) { if ((Ezek::Int64)NDigitos(vbuffer()) + 1 >= MaxNum) { // sonido de error return; } vbuffer() = vbuffer() * 10 + Numero; RefrescarBDT(TBarraDeTexto); } void QuitarNumero(TextBox^ TBarraDeTexto) { vbuffer() = vbuffer() / 10; RefrescarBDT(TBarraDeTexto); } void QuitarTodosLosNumeros(TextBox^ TBarraDeTexto) { vbuffer() = 0; RefrescarBDT(TBarraDeTexto); } void CambiarBuffer() { __vbuffer = (!__vbuffer); } Ezek::Int64 vbuffer() { if (__vbuffer) return __vbuffer1; else return __vbuffer2; } };
Ese código está dentro de mi propio namespace Ezek junto muchos otros componentes, pero sólo este me da error (ni siquiera el me da warning los otros componentes, así que el problema está en este). Exactamente, el error reside en la línea del constructor Calc(TextBox^ e): 1>------ Build started: Project: Proyecto 1 (Calculadora Simple), Configuration: Debug Win32 ------ 1>Compiling... 1>Proyecto 1 (Calculadora Simple).cpp 1>c:documents and settingsusuariomis documentosvisual studio 2008projectsproyecto 1 (calculadora simple)proyecto 1 (calculadora simple)calculadora(projecto1).h(18) : error C2512: 'Ezek::Int64' : no appropriate default constructor available 1>c:documents and settingsusuariomis documentosvisual studio 2008projectsproyecto 1 (calculadora simple)proyecto 1 (calculadora simple)calculadora(projecto1).h(18) : error C2512: 'Ezek::Int64' : no appropriate default constructor available 1>c:documents and settingsusuariomis documentosvisual studio 2008projectsproyecto 1 (calculadora simple)proyecto 1 (calculadora simple)calculadora(projecto1).h(18) : error C2512: 'Ezek::Int64' : no appropriate default constructor available 1>Build log was saved at "file://c:Documents and SettingsUsuarioMis documentosVisual Studio 2008ProjectsProyecto 1 (Calculadora Simple)Proyecto 1 (Calculadora Simple)DebugBuildLog.htm" 1>Proyecto 1 (Calculadora Simple) - 3 error(s), 0 warning(s) ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
8
« en: Lunes 21 de Septiembre de 2009, 12:43 »
¿Si esto no es c++, entonces qué es? Yo pensaba que era c++ o visual c...
9
« en: Domingo 20 de Septiembre de 2009, 19:33 »
Buenos días. Tengo un problema con c++. Utilizo visual c++ y me gustaría conseguir una lista de todas las ventanas (HWND) que existen. Para ello, he creado esta función: array<HWND>^ GetAllWindows() { array<HWND>^ RetResult = gcnew array<HWND>(1000); HWND temporary = WIN32::GetTopWindow(void); while temporary != 0 do { RetResult<RetResult->Length + 1> = temporary temporary = WIN32::GetNextWindow(); } }
No funciona. Sobre c++ se muuuy poquito, y cuando veo las arrays hasta me mareo. ¿Alguien me puede dar una pequeña explicación de lo qué está mal?
Páginas: [1]
|
|
|