|
41
|
Programación / Programación C/C++ / Re: Problema con violación de segmento
|
en: 26 Julio 2011, 22:28 pm
|
Si, es un seminario de lenguaje C, no nos permiten ni C++ ni C#. Es más, nos hicieron hacer un trabajo final de manejos de .BMP y nos hicieron hacer todo por nuestra cuenta, nada de usar funciones predefinidas de BMP ni nada, todo manual... Aprendí bastante, pero fue un dolor de cabeza importante, jaja...
Jaja me lo imagino
|
|
|
42
|
Programación / Programación C/C++ / Re: Problema con violación de segmento
|
en: 26 Julio 2011, 22:22 pm
|
Edito:ya lo explico el compañero naderST De todos modos eso seria todo segun veo,si quieres puedes utilizar al operador new para asignar memoria,es de C++ pero es mas simple de asignar,aunque claro si el profe te dice que uses C yo no voy a decir lo contrario,asique dejaria el code asi si nadie tiene algo que añadir. PD:Asignar la fecha como int a --->26072011,queda mas chapuzas pero bueno...Ademas no lo he probado,lo estoy diciendo por intuicion mas que otra cosa...xD Un saludo
|
|
|
43
|
Programación / Programación C/C++ / Re: Problema con violación de segmento
|
en: 26 Julio 2011, 22:03 pm
|
Ahora estaría bien,te faltaba el cast: #include <stdio.h> #include <string.h> #include <stdlib.h> typedef struct { char *nombre; char *apellido; char *fecha; char *legajo; char *tipDoc; int DNI; }Alumno; int main(){ Alumno alu,alu2; alu. nombre= (char *)malloc(sizeof(alu. nombre)); alu. apellido= (char *)malloc(sizeof(alu. apellido)); alu. fecha= (char *)malloc(sizeof(alu. fecha)); alu. legajo= (char *)malloc(sizeof(alu. legajo)); alu. tipDoc= (char *)malloc(sizeof(alu. tipDoc)); strcpy(alu. apellido,"Gonzalez"); alu.DNI=36363023; alu2. nombre= (char*) malloc(sizeof(alu2. nombre)); alu2. apellido= (char*)malloc(sizeof(alu2. apellido)); alu2. fecha= (char *)malloc(sizeof(alu2. fecha)); alu2. legajo= (char*)malloc(sizeof(alu2. legajo)); alu2. tipDoc= (char*)malloc(sizeof(alu2. tipDoc)); alu2=alu; printf("El nombre del alu es: %s, el de alu2 es: %s\n",alu. nombre,alu2. nombre); printf("El apellido del alu es: %s, el de alu2 es: %s\n",alu. apellido,alu2. apellido); printf("La fecha del alu es: %s, el de alu2 es: %s\n",alu. fecha,alu2. fecha); printf("El legajo del alu es: %s, el de alu2 es: %s\n",alu. legajo,alu2. legajo); printf("El tipo de documento del alu es: %s, el de alu2 es: %s\n",alu. tipDoc,alu2. tipDoc); printf("El DNI del alu es: %d, el de alu2 es: %d\n\n\n",alu. DNI,alu2. DNI); printf("El nombre del alu es: %s, el de alu2 es: %s\n",alu. nombre,alu2. nombre); printf("El apellido del alu es: %s, el de alu2 es: %s\n",alu. apellido,alu2. apellido); printf("La fecha del alu es: %s, el de alu2 es: %s\n",alu. fecha,alu2. fecha); printf("El legajo del alu es: %s, el de alu2 es: %s\n",alu. legajo,alu2. legajo); printf("El tipo de documento del alu es: %s, el de alu2 es: %s\n",alu. tipDoc,alu2. tipDoc); printf("El DNI del alu es: %d, el de alu2 es: %d\n",alu. DNI,alu2. DNI); return 0; }
Por cierto,una sugerencia,yo la fecha la pondria como int mas que como char... Un saludo
|
|
|
44
|
Programación / Programación C/C++ / Dudas con las referencias
|
en: 26 Julio 2011, 15:46 pm
|
Hola a todos,resulta que tengo este codigo: int& maxref(int& a, int& b) { if (a >= b) return a; else return b; } maxref(i, j) = 0;
He estado practicando con referencias sencillas,como por ejemplo: int i=2; int& iref = i;
Lo malo es que en las funciones de este tipo me lio un poco,veamos se pasa la los parametros i,j y la funcion recoje la memoria donde están almacenados ambos,luego imaginemos que a es mayor que b,retorna a,pero ¿que retorna exactamente?¿su direccion de memoria?.Lo que si se es que el valor retornado se le asigna el valor de 0 pero lo que no entiendo bien es: int& maxref
He probado también a ponerlo sin el apersand,y me da el mismo valor¿es que estoy haciendo dos cosas iguales?Porque lo que me despista es eso,lo demas para nada. Puede parecer un poco simple,pero he trabajado con muchas funciones de pasar los parametros por valor y por referencia tipo: int a =3; int j = 5; int funcion(&a,&j); int funcion(int *a ,int *b){ etc}
Pero nunca tuve que usar este tipo,he buscado algo de información pero no me lo ha dejado suficientemente claro...Si alguien me pudiera echar un cable se lo agradeceria. Un saludo
|
|
|
47
|
Programación / Programación C/C++ / Re: problema de lenguaje C
|
en: 15 Julio 2011, 11:47 am
|
En tu ultimo codigo¿que es lo que quieres conseguir?¿poner el valor segun las columnas y filas y darle un valor?,o simplemente que introduzca un valor y guardarlo en una variable? Si es el primero es esto: #include <stdio.h> int main () { int i,j,columnas,filas,ventas; printf (" diga el numero de columnas \t "); printf (" diga el numero de filas \t "); int matri[columnas][filas]; for (i=1 ; i<=columnas; i++) { for (j=1 ; j<=filas; j++) { printf ("diga su venta \t %d/%d ",i ,j ); scanf ("%d",&matri [i ][j ]); } } }
De todas maneras pienso que lo mas comodo seria incrementar el valor de filas y columnas en el for
|
|
|
48
|
Programación / Programación C/C++ / Re: ¿Manual para manejar procesos en C?
|
en: 14 Julio 2011, 21:02 pm
|
Gracias a ambos Linux no me intersa tanto y yo pensaba que el fork() era para windows Porque el manual que me paso el_java pensaba que era para windows no para linux¿es cierto? Me gustaria si alguno tiene un poco de tiempo como se puede jugar para matar un proceso en la memoria no generado por un proceso padre,es decir,matar con C por ejemplo el notepad.exe Gracias a todos por el interes. Dark Invader
|
|
|
49
|
Programación / Programación C/C++ / Re: ¿Manual para manejar procesos en C?
|
en: 14 Julio 2011, 17:56 pm
|
Gracias El_Java,parece muy interesante el manual que me has mandado.Ya obtuve una pagina del compañero Queta pero esta tambien parece muy interesante...Si alguien mas tiene alguna pagina se lo agradeceria Si pudiera ser mas manuales pero para windows sobre todo. Un saludo y gracias
|
|
|
50
|
Programación / Programación C/C++ / ¿Manual para manejar procesos en C?
|
en: 14 Julio 2011, 13:29 pm
|
Hola a todos Me gustaría saber si teneis por ahí un manual para aprender todo lo relacionado con los procesos en lenguaje C,es decir,como crear procesos padres e hijos,como matar procesos,etc... Os estaría agradecido si es un manual básico,ya que nunca he tocado procesos en C. Bueno gracias a quien pueda ayudarme. Un saludo
|
|
|
|
|
|
|