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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 [7] 8 9 10 11 12 13 14 15 16 17 18 19 20
61  Programación / Programación C/C++ / Re: problemas con punteros en: 4 Enero 2012, 22:13 pm
Hola , he revisado y cambiado algunas cosas de tu código, míratelo y comentamos lo que no comprendas ...

Por cierto , por si están tentados a comentar el tema recursividad usada en el programa, no se molesten,  tengo bastante claros los pros y contras ... en este caso la use solo para el ejemplo

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>//funcion malloc()
  3. //no debes usar nunca conio
  4. //#include <conio.h> // funcion getch()
  5. #include <string.h> // funcion strcpy()
  6. #define  MAX_REG 2 //Define el maximo numero de registros
  7.  
  8. //limpia el buffer
  9. #define LIMPIAR_BUFFER while(getchar() != '\n')
  10.  
  11. // Primero definimos los tipos
  12. typedef struct registro1
  13. {
  14.    char concepto[30+1];
  15.    char RFC[21+1];
  16.    float monto;
  17.    int mes;
  18.    struct registro1* sig;
  19.  
  20. }ingreso;
  21.  
  22. int introduceRegistro(ingreso **pIngreso);//le pasamos el puntero original de la lista
  23.  
  24. //agrega un elemento a la lista
  25. void addIngreso(ingreso **pIngreso , ingreso *aux );
  26.  
  27. //imprime el campo concepto de todos los elementos en la lista
  28. void imprimeConcepto(ingreso *pIngreso);
  29.  
  30.  
  31. int main()
  32. {
  33.    ingreso *pIngreso = NULL;
  34.    printf("\nIngresa los datos del registro \n");
  35.    introduceRegistro(&pIngreso);
  36.  
  37.    printf("presiona una tecla para continuar...\n") ;
  38.    getchar();
  39.    return 0;
  40. }
  41.  
  42. void addIngreso(ingreso **pIngreso , ingreso *aux ){
  43. if(*pIngreso == NULL){
  44. *pIngreso = aux;
  45. }else{
  46. //llamamos recursivamente a la función
  47. addIngreso(&((*pIngreso)->sig) , aux);
  48. }
  49. }
  50.  
  51. void imprimeConcepto(ingreso *pIngreso){
  52. if(pIngreso != NULL){
  53. printf("%s \n", pIngreso->concepto);
  54. imprimeConcepto(pIngreso->sig);
  55. }
  56. }
  57.  
  58. int introduceRegistro(ingreso **pIngreso)
  59. {
  60.    int i;
  61.    //lo usamos para ir agregando la información
  62.    ingreso *aux;
  63.  
  64.    for(i=0 ;  i<MAX_REG ; i++ ){    
  65.        aux = (ingreso*)malloc(sizeof(ingreso));//A todo puntero hay que asignarle memoria.
  66.  
  67.        printf("Concepto :");
  68.        gets(aux->concepto);
  69.  
  70.        printf("RFC :");
  71.        gets(aux->RFC);    
  72.  
  73.        printf("Monto :");
  74.        scanf("%f",&aux->monto);
  75.        LIMPIAR_BUFFER;      
  76.  
  77.        printf("Mes :");
  78.        scanf("%d",&aux->mes);
  79. LIMPIAR_BUFFER;
  80.  
  81.        //lo agregamos a la lista
  82.        addIngreso(pIngreso, aux);
  83.    }
  84.  
  85.    printf("Los valores del campo concepto de la lista de ingresos son : \n");
  86.   //mostramos el "concepto" de todos los campos
  87.   imprimeConcepto(*pIngreso);
  88.  
  89. return 0;
  90. }
  91.  

Saludos
62  Sistemas Operativos / GNU/Linux / Re: como hacer que no pida contraseña en linux en: 4 Enero 2012, 10:23 am
A lo mejor te sirve esto :

http://donzeyt.blogspot.com/2010/01/gmnome-iniciar-sesion-sin-pedir.html

Saludos
63  Programación / Programación C/C++ / Re: Ayuda con un programa en C en: 4 Enero 2012, 10:18 am
Fíjate en como uso el argumento pasado a la función (el array). La clave es usar el índice(variable i) para acceder a los miembros del array.

Código
  1. /* Inclusion de librerias */
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. /* Definicion de constantes */
  5. #define MAX_TITULO 35
  6. #define MAX_AUTOR 20
  7. #define MAX_LIBRO 10
  8.  
  9. #define LIMPIA_BUFFER while(getchar()!='\n')
  10.  
  11. /* Definicion de tipos creados por el programador */
  12. struct fecha{
  13.     int anno;
  14.     int mes;
  15. };
  16.  
  17. typedef struct fecha T_fecha;
  18.  
  19. struct libreria {
  20.      T_fecha fecha_publicacion;
  21.      char titulo[MAX_TITULO];
  22.      char autor[MAX_AUTOR];
  23. };
  24. typedef struct libreria T_libreria;
  25. /* Prototipos de funcion */
  26. void menu(void);
  27. void recoger_libro(T_libreria libro[]);
  28. void mostrar_libro(T_libreria libro[]);
  29.  
  30. int main(){
  31. T_libreria libro[MAX_LIBRO];
  32. recoger_libro(libro);        
  33.  
  34. }
  35.  
  36. void recoger_libro(T_libreria libro[])
  37. {
  38.    int n, i;
  39.  
  40.    printf("Libros a introducir? ");
  41.    scanf("%d", &n);
  42.    LIMPIA_BUFFER;
  43.  
  44.    for(i=0 ; i<n ; i++){
  45.     printf("Titulo del libro: ");
  46.     gets(libro[i].titulo);    
  47.     }
  48.  
  49.    printf("Títulos incluidos. Pulse una tecla para continuar...");
  50.    getchar();
  51.     // con esto limpiamos la consola
  52.    fprintf(stdout, "\033[2J");  
  53.    //nos posicionamos al principio
  54.    fprintf(stdout, "\033[1;1H");
  55.  
  56.    printf("Los libros incluidos son: \n");
  57.    for(i=0 ; i < n ; i++){
  58. printf("%s \n" , libro[i].titulo);
  59.    }
  60.  
  61. }
  62.  

saludos.
64  Foros Generales / Foro Libre / Re: Cuentanos tu mejor chiste!! en: 2 Enero 2012, 13:51 pm
Qué es una mujer sentada encima de un burro ?
Un burro de dos pisos !!!!
65  Programación / Programación C/C++ / Re: Ayuda con un programa en C en: 1 Enero 2012, 21:04 pm
No se si te has dado cuenta de que en recoger libro estás recibiendo un array de libros , no un solo libro , usa "[ ]" para referirte a la posición del que estás guardando la información , no te da errores el compilador ? te sucede lo mismo cuando intentas mostrar los libros guardados.

Otro consejo sería que evites el uso de conio y de llamadas al sistema (" system("cls");") .

Saludos
66  Programación / Java / Re: JavaDoc en: 30 Diciembre 2011, 18:40 pm
Pues va ha estar jodido revertir lo del javadoc , si tuvieras los .class o un jar/war sería posible, de todas maneras , eclipse tiene muchas funcionalidades de generación de código , solamente tendrías quedefinir, el cuerpo de la clase y sus variables , y el eclipse te da la opción de generar los getters y los setters.

Saludos.
67  Programación / Scripting / Re: Esto es facil para vosotros, dificil para mi !!! script Ubuntu en: 28 Octubre 2011, 19:45 pm
Si lo que quieres es imprimir la salida del comando ls -A con el bucle for y un fichero en cada linea , puedes hacer lo siguiente

Código
  1. #!/bin/sh
  2.  
  3. valor=`ls -A `
  4.  
  5. echo $valor
  6.  
  7. for i in $valor ;
  8. do
  9. echo $i
  10. done
  11.  
  12.  
68  Programación / Scripting / Re: FTP y automatizacion mediante scripting. en: 22 Octubre 2011, 16:15 pm
Hola , lo que has de hacer , es crear, o modificar si ya existiera , el archivo ~/.netrc , en este fichero especificas el dominio al que te quieres conectar , el usuario y el password,  el fichero en cuestión debe tener los permisos puestos a 600. De esta manera el login en el host ftp será automático.

En el siguiente enlace encontrarás mas info
http://www.ibiblio.org/pub/linux/docs/LuCaS/Manuales-LuCAS/doc-unixsec/unixsec-html/node195.html

Saludos.
69  Programación / Programación C/C++ / Re: Ejecutar en C-Ayuda en: 12 Septiembre 2011, 21:43 pm
La pregunta no está nada clara compañero, pero si no entiendo mal  supongo que lo que buscas es algo como esto:

Código
  1. #include <stdio.h>
  2.  
  3. int main(){
  4.     printf("Hola Mundo \n");
  5.    getchar();
  6. }
  7.  

Saludos.
70  Programación / Programación C/C++ / Advanced Linux Programming en: 27 Agosto 2011, 19:00 pm
Hola a todos , he encontrado el siguiente libro que tiene muy buena pinta, posteo el link en este foro por la estrecha relación Unix/Gnu-Linux y C , espero les sirva..

http://www.advancedlinuxprogramming.com/

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