Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - durasno

#321
No se porque te marca como si el error fuese el puntero, lo que veo mal es el uso de strcmp, esta funcion recive dos puntero a char(char *) y vos le estas pasando "val" que es un char. Corregi eso

Saludos
#322
Hola! lo que podes hacer es usar los modificadore de formato, ejemplo:
printf("%10s %10s %10s\n","Nombre","matricula","dni");
printf("%10s %10s %10d\n","Torino10","AJFUDS",12345678);


El numero 10 entre "%" y "s" indica que va a ocupar un minimo de 10 espacios comenzando desde la derecha. Si queres justificarlo hacia la izquierda solo le agragras el menos: %-10s

Saludos
#323
Espero que lo escanees, me interesa

Saludos
#324
pero tenes dos variables pos: una es "pos1" y la otra es "pos"
Vos incrementas "pos"

void insertar()
{
indice = fopen("indice.dat", "ab+");
procesos = fopen("procesos.dat", "ab+");
pos++;

if(pos==3){
inde();
fseek (salida,0,SEEK_END);
fwrite(&regmaestro,sizeof(regv),3,procesos);
pos=0;
}
#325
La verdad nose xq t marca ese error, igual yo te dije que el otro while estaba mal, el del )
while(b<strlen(linea))
{
   if(linea!=')')
   {
      if(linea!=',')
      {
         c[0]=linea;
         strcat(linea2,c);
         b++;
      }
#326
Con los subindices me refiero a que pongas los []
Tenes que hacer
if(linea[b][b][/b]!=')')
   {
      if(linea[b][b][/b]!=',')
      {
         c[0]=linea[b][b][/b];
         strcat(linea2,c);
         b++;
      }


A pos solo lo incrementas una vez y es cuando llamas a la funcion insertar
#327
Hola! te marco algunos errores q veo, nose si son de tipeo pero lo marco igual
En la funcion cortar:
while(b<strlen(linea))
{
   if(linea!=')')
   {
      if(linea!=',')
      {
         c[0]=linea;
         strcat(linea2,c);
         b++;
      }

Te falta los subindices del arreglo linea (linea). Tambien en la funcion ordenar te falta los subindices del arreglo regmaestro

En la funcion inde:
fwrite (&ind.poss,sizeof(index),0,indice); si pones 0 no vas a escribir nada

En la funcion insertar:
if(pos==3){
inde();
fseek (salida,0,SEEK_END);
fwrite(&regmaestro,sizeof(regv),3,procesos);
pos=0;
}

No se guarda nada porque pos nunca es igual a 3, por lo tanto no entra al if. Por lo que vi pos vale 1

Ademas cerras dos veces los punteros indice y procesos. Lo cerras en el main y en la funcion insertar

Corregi esas cosas y contame. Saludos
#328
El problema es al usar scanf primero, despues de ingresar una palabra se tipea el ENTER el cual queda almacenado en el bufer de entrada y gets toma ese ENTER sin dejarte ingresar la frase
Para que no tome el enter podes hacer
scanf("%s",w);getchar();

o usar dos gets
gets(s)
gets(w)
#329
mmm estas seguro? Te funciona bien sumandole 1??

Saludos
#330
Hola! el error esta en usar scanf para ingresar una frase. Si vos qres ingresar algo como "Hola soy una frase", scanf lee hasta encontrar un blanco, osea solo se va a guardar en s: "Hola". Para ingresar frases podes usar: gets, fgets o crear tu propia funcion para entrada de cadenas
Otro error es: if(n+1==lw). Si las palabras son iguales, n ya va a ser igual a lw, no es necesario sumarle 1

Saludos