Foros de daboweb

MULTIMEDIA, Video digital, Grabación, Diseño gráfico, Diseño web, Programación => Webmasters - Diseño Web - Programación - Diseño gráfico => Mensaje iniciado por: *pointer en 01 de Abril de 2005, 12:56:23 am

Título: Lectura y creado de ficheros
Publicado por: *pointer en 01 de Abril de 2005, 12:56:23 am
Buenas, estoy recien comenzando a programar en C, y trantando de hacer un programilla me topo con que no funciona y no se pork.. :S

Código: [Seleccionar]
#include <stdio.h>

void crear() {
        FILE *archivo;
        archivo=fopen("jejeje.txt", "w");
       
       if(archivo==NULL) {
                         printf("No se pudo crear el archivo\n\n");
                         exit(1);
                         }
fputs("Linea escrita...\n", archivo);
fclose(archivo);
}

void leer() {
       FILE *archivo;
       char texto[200];
       
       archivo=fopen("jejeje.txt","r");
       if(archivo==NULL) {
                         printf("No se pudo abrir el archivo");
                         printf("Presione cualquier tecla para terminar...");
                         exit(1);
                         }
        fgets(texto, 200, archivo);
        printf("%c", texto);
        printf("Pulsa cualquier tecla para terminar...");
        fclose(archivo);
        getch();
        exit(0);
        }

int main() {
     int opcion;
     printf("Si quieres crear el archivo y llenarlo con datos, escribe 1.\nSi quieres leerlo escribe 2\n");
     printf("Escribe la opcion que deseas: ");
     scanf("%d\n", opcion);
     
     if(opcion==1) {
                   crear();
                   }
                   else {
                        leer();
                        }
}


Me sale un error de Violacion de Segmento... cpaz q no es un codigo muy optimizado, pero creo que escribiendo codigos asi como estoy haciendo, voy aprendiendolo.

De antemano gracias por la ayuda.

Saludos
Título: Re: Lectura y creado de ficheros
Publicado por: jirho en 05 de Abril de 2005, 06:19:47 pm
...hola y bienvenido, el problema esta en: printf("%c", texto); , le indicas imprimir un caracter ("%c") y debes imprimir una cadena ("%s")...saludos... :wink: ...