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]
1  Programación / Bases de Datos / Modelo Entidad/Relacion en: 14 Enero 2017, 13:22 pm
Hola,¿podríais falicitarme alguna página donde haya ejercicios sobre el modelo entidad relacion? Gracias
2  Programación / Programación C/C++ / fwrite Estructuras en: 4 Enero 2017, 09:59 am
Hola, estoy intentando escribir en un archivo de texto datos con la siguiente funcion:

Código
  1.  
  2. void insertarDatos(FILE *Fichero,tipoAlumno alumno[NALUMNOS],int contador,int vectorAsig[NALUMNOS]){
  3.  
  4.    int i;
  5.    int j;
  6.    Fichero=fopen("fichero.txt","w+");
  7.  
  8.    if(Fichero==NULL){
  9.        printf("\nFichero no existe!\nPor favor creelo");
  10.  
  11.        return;
  12.    }
  13.  
  14.    for(i=0;i<contador;i++){
  15.  
  16.        fwrite(alumno[i].nombre,sizeof(char),sizeof(alumno.nombre),Fichero);
  17.        fwrite(alumno[i].identificador,sizeof(char),sizeof(alumno.identificador),Fichero);
  18.        fwrite(alumno[i].curso,sizeof(int),1,Fichero);
  19.  
  20.    }
  21.    fclose(Fichero);
  22.  
  23. }
  24.  
  25.  

El caso es que, al usar fwrite las dos primeras lineas, con datos de tipo char, no hay ningun problema, y en el fichero se me guardan los datos, pero cuando llega al fwrite donde hay un entero, al compilar me da el warning:

warning: passing argument 1 of 'fwrite' makes pointer from integer without a cast [-Wint-conversion]

y no se muy bien lo que quiere decir. He intentado probar con la linea:
Código
  1.  
  2. fwrite(&alumno[i].curso,sizeof(int),1,Fichero);
  3.  


pero me escribe caracteres aleatorios en el fichero. ¿Podrían ayudarme? Gracias
3  Programación / Programación C/C++ / Poner Vector a null en: 21 Diciembre 2016, 19:24 pm
Hola, hay alguna manera de poner alguna componente de un vector vacia? Es decir si yo tengo un vector de longitud 10, meto datos desde la posicion 0 a la posicion 5, y y desde la posicion 6 a la posicion 9 no quiero que haya nada dentro del vector, ni el 0 que aparece por defecto. ¿Es posible? Gracias
4  Programación / Programación C/C++ / Re: Problema Programa C en: 20 Diciembre 2016, 20:47 pm
Vale entiendo. Y para mostrar por pantalla, sigo utilizando puts? Mil gracias
5  Programación / Programación C/C++ / Re: Problema Programa C en: 20 Diciembre 2016, 19:12 pm
Y entonces que funcion deberia utilizar? Si utilizo fgets sin fflush y sin getchar(), cuando ejecuto el programa se salta  introducir nombre. y espera a que le de el siguiente campo
6  Programación / Programación C/C++ / Re: Problema Programa C en: 20 Diciembre 2016, 16:30 pm
void anadirAlumno( tipoAlumno alumno[NALUMNOS],int contador){
   
   
    int numero;
    int i;
   
   
   
    printf("Introducir Nombre y Apellidos:");
   
    getchar();
    fflush(stdin);
    gets(alumno[contador].nombre);
   
   
 
   
    printf("Introducir DNI:");
    scanf("%s",&alumno[contador].identificador);
    printf("Introducir curso:");
    scanf("%d",&alumno[contador].curso);
    printf("Introducir telefono:");
    scanf("%d",&alumno[contador].telefono);

}
   
7  Programación / Programación C/C++ / Re: Problema Programa C en: 20 Diciembre 2016, 14:58 pm
Creo que se cual es el problema. Cuando introduzco un nombre, por ejemplo francisco, en nombre[0] me aparece '\0' y en nombre[1] me aparece r, nombre[2]=a ... ¿Cómo puedo solucionar eso?
8  Programación / Programación C/C++ / Problema Programa C en: 20 Diciembre 2016, 14:36 pm
Hola, estoy haciendo un programa en C y tengo un problema. Tengo la siguiente función:
Código
  1. void mostrarAlumnos(tipoAlumno alumnos[NALUMNOS],int contador){
  2.    int i;
  3.  
  4.  
  5.  
  6.    printf("Los alumnos son:\n");
  7.  
  8.    for(i=0;i<contador;i++){
  9.  
  10.        puts(alumnos[i].nombre);
  11.        printf("%s",alumnos[i].nombre);
  12.        printf("DNI:%s\n",alumnos[i].identificador);
  13.        printf("Curso:%d\n",alumnos[i].curso);
  14.        printf("Telefono:%d\n",alumnos[i].telefono);
  15.  
  16.    }

A la hora de llamar a la funcion en main, la funcion no me muestra el primer campo, nombre..  Deja un espacio en blanco y muestra los siguientes campos. Nombre lo tengo declarado como char[50] dentro de la estructura , y para guardar caracteres en este campo utilizo gets ¿Cual es el problema? Gracias de antemano

CoAdm: los códigos deben ir en etiquetas GeSHi, los títulos deben ser descriptivos
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines