elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Ingresar Registrarse
11 Octubre 2008, 18:15  



+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++
| | |-+  problema al crear ficheros
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Imprimir
Autor Tema: problema al crear ficheros  (Leído 393 veces)
Proxy Lainux

Desconectado Desconectado

Mensajes: 142



Ver Perfil
problema al crear ficheros
« en: 29 Marzo 2008, 23:24 »

hola

una pregunta... al seguir estudiando de diferente manuales que hay en la red... en uno me ponene un ejemplo de como crear ficheros...

yo lo hago de esta forma

int main()
{
FILE *f;
f=fopen("hola.txt","a");
fprintf("Hola Mundo");
fclose(f);
return 0;
}

pero en el manual viene de esta forma

#include <stdio.h>

typedef struct{
char c1;
int c2;
char c3[20];
float c4;
}registro;

int main()
{
char opcion;
registro reg;
FILE *f;

f=fopen("datos.dat","a");

do{

printf("c1 (char): ");
scanf("%c",&reg.c1);
fflush(stdin);
printf("c2 (int): ");
scanf("%d",&reg.c2);
fflush(stdin);
printf("c3 (string): ");
scanf("%s",&reg.c3);
fflush(stdin);
printf("c4 (float): ");
scanf("%f",&reg.c4);
fflush(stdin);
fwrite(&reg,sizeof(registro),1,f);
printf("Otro ( s o n): ");
scanf("%c",&opcion);
fflush(stdin);
}
while(opcion!='n');
fclose(f);
}


y cuando lo ejecuto.. escribo lo que me pide.. pero me parecen solo simbolos...

%#"%2%b$#"%$#"bgfdhgt453&%$&#&%3

porke pasa eso?.. alguien sabe?

espero su respuesta

gracias...  ;D


--EDITADO... perdon lo koloke mal
« Última modificación: 29 Marzo 2008, 23:35 por Proxy Lainux » En línea
Ferсhu

Desconectado Desconectado

Mensajes: 1.221

Menos palabras y Mas codigos.


Ver Perfil WWW
Re: problema al crear ficheros
« Respuesta #1 en: 30 Marzo 2008, 00:28 »

Citar
fprintf("Hola Mundo");

 :rolleyes:

cual de los 2 no te funciona??

http://www.conclase.net/c/librerias/funcion.php?fun=fprintf
« Última modificación: 30 Marzo 2008, 00:30 por Adamantyum » En línea

Proxy Lainux

Desconectado Desconectado

Mensajes: 142



Ver Perfil
Re: problema al crear ficheros
« Respuesta #2 en: 30 Marzo 2008, 01:34 »

la que no me funciona es la de abajo...

Código:
#include <stdio.h>

typedef struct{
char c1;
int c2;
char c3[20];
float c4;
}registro;

int main()
{
char opcion;
registro reg;
FILE *f;

f=fopen("datos.dat","a");

do{

printf("c1 (char): ");
scanf("%c",&reg.c1);
fflush(stdin);
printf("c2 (int): ");
scanf("%d",&reg.c2);
fflush(stdin);
printf("c3 (string): ");
scanf("%s",&reg.c3);
fflush(stdin);
printf("c4 (float): ");
scanf("%f",&reg.c4);
fflush(stdin);
fwrite(&reg,sizeof(registro),1,f);
printf("Otro ( s o n): ");
scanf("%c",&opcion);
fflush(stdin);
}
while(opcion!='n');
fclose(f);
}
En línea
Ferсhu

Desconectado Desconectado

Mensajes: 1.221

Menos palabras y Mas codigos.


Ver Perfil WWW
Re: problema al crear ficheros
« Respuesta #3 en: 30 Marzo 2008, 04:52 »

 :¬¬ :¬¬

Código:
f=fopen("datos.dat","rb");
ZeroMemory(&reg,sizeof(registro));
fread(&reg,sizeof(registro),1,f);
printf("%c\n",reg.c1);
printf("%d\n",reg.c2);
printf("%s\n",reg.c3);
printf("%f\n",reg.c4);


Si q funciona  :¬¬

probalo.
En línea

Proxy Lainux

Desconectado Desconectado

Mensajes: 142



Ver Perfil
Re: problema al crear ficheros
« Respuesta #4 en: 30 Marzo 2008, 12:30 »

duuhh..  :P

pues si.. que tonto soy... se me habia olvidado que lo mismo me pasaba con visual basic, pero al leer el archivo todo me aparecia normal... jeje, perdon...

bueno, gracias por la ayuda...  ;D
En línea
ghastlyX
Moderador Global
*****
Desconectado Desconectado

Mensajes: 1.709


No es posible conseguir nada sin arriesgarse algo


Ver Perfil
Re: problema al crear ficheros
« Respuesta #5 en: 30 Marzo 2008, 15:22 »

Por cierto, no utilices fflush para stdin.

Un saludo de ghastlyX ;)
En línea
sch3m4
Colaborador

Desconectado Desconectado

Mensajes: 1.534

Nihil est in intelectu quod prius not fuerit insen


Ver Perfil
Re: problema al crear ficheros
« Respuesta #6 en: 30 Marzo 2008, 15:35 »

Buenas =)

Por cierto, no utilices fflush para stdin.

Un saludo de ghastlyX ;)

Por qué lo dices?
En línea

Proyecto Open Source (GPLv3) - PExtractor v0.2

"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.(...)"
ghastlyX
Moderador Global
*****
Desconectado Desconectado

Mensajes: 1.709


No es posible conseguir nada sin arriesgarse algo


Ver Perfil
Re: problema al crear ficheros
« Respuesta #7 en: 30 Marzo 2008, 15:41 »

No está definido el comportamiento de fflush para stdin, por lo que se recomienda no utilizarlo.

Citar
Si stream apunta a un stream de salida o de actualización cuya operación más reciente no era de entrada, la función fflush envía cualquier dato aún sin escribir al entorno local o a ser escrito en el fichero; si no, entonces el comportamiento no está definido. Si stream es un puntero nulo, la función fflush realiza el despeje para todos los streams cuyo comportamiento está descrito anteriormente.
Fuente: http://www.conclase.net/c/librerias/funcion.php?fun=fflush

Un saludo de ghastlyX ;)
En línea
Ferсhu

Desconectado Desconectado

Mensajes: 1.221

Menos palabras y Mas codigos.


Ver Perfil WWW
Re: problema al crear ficheros
« Respuesta #8 en: 30 Marzo 2008, 20:50 »

Citar
Por cierto, no utilices fflush para stdin.


Yo soy de los q dice, si funciona y obtenemos lo q keriamos, por q no usarlo? jaja
En línea

ghastlyX
Moderador Global
*****
Desconectado Desconectado

Mensajes: 1.709


No es posible conseguir nada sin arriesgarse algo


Ver Perfil
Re: problema al crear ficheros
« Respuesta #9 en: 30 Marzo 2008, 21:11 »

Porque hay otras maneras de conseguir lo mismo estando seguros al 100% de que va a funcionar.

Un saludo de ghastlyX ;)
En línea
Proxy Lainux

Desconectado Desconectado

Mensajes: 142



Ver Perfil
Re: problema al crear ficheros
« Respuesta #10 en: 31 Marzo 2008, 01:35 »

solamente keria decir que kuando kito fflush(stdin)... me aparece asi cuando ejecuto el programa

opcion(char):hola ---> cuando le doy enter... asi me aparece...
opcion(int): opcion(string): opcion(float):



En línea
Karman

Desconectado Desconectado

Mensajes: 237



Ver Perfil WWW
Re: problema al crear ficheros
« Respuesta #11 en: 31 Marzo 2008, 04:27 »

hay demasiados theads que hablan de fflush... tómate el trabajo de buscar el en foro y encontrarás la solución...

S2
En línea

Proxy Lainux

Desconectado Desconectado

Mensajes: 142



Ver Perfil
Re: problema al crear ficheros
« Respuesta #12 en: 31 Marzo 2008, 07:14 »

hola

pero no hice ninguna pregunta.... solo comente que kuando volvi a hacer el ejercicio y kite fflush para ver que pasaba... me aparecio de esa forma el programa... pero no fue pregunta, solo comentario....

nos vemos
En línea
Páginas: [1] Ir Arriba Imprimir 
Ir a:  







Consolas     La Web de Goku     MilW0rm     MundoDivx

Hispabyte     Truzone     TodoReviews     ZonaPhotoshop

hard-h2o modding    Foros de ayuda    Yashira.org    Videojuegos    indetectables.net   

Noticias Informatica    Seguridad Informática    ADSL    Foros en español    eNYe Sec

Todas las webs afiliadas están libres de publicidad engañosa.

Powered by SMF 1.1.6 | SMF © 2006-2008, Simple Machines LLC
Free counter and web stats