Enviado em 20/04/2010 - 15:00h
Pessoal como eu trablho com Arquivos no lInux, eu criei uma funcao que opera no windows mas com as funcoes open(),close(),write() -caracteristicas do sistema UNIX/LINUX- mas usando a biblioteca io.h e fcntl.h , mas aprimeira nao existe no gcc. Leio o livro do Orerlly sobre Linux e usei a biblioteca unistd.h que contem write() e read() se nao me engano. Apesar de tudo isso nao passar no teste de validacao "no linux"!
Abaixo vao um pedaço do código:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<io.h>
#include<fcntl.h>
/*funcao salvar*/
void Salvar(struct No *Pt)
{
int fp;
fp=open("Paradigmas",O_WRONLY|O_CREAT|O_TRUNC);
if (fp)
{
while(Pt)
{
write(fp,Pt,sizeof(struct No));
Pt=Pt->prox;
}
fp=close(fp);
if(fp==-1)
printf("\nFalha ao fechar arquivo\a");
}
else return;
}
Abaixo vao um pedaço do código:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<io.h>
#include<fcntl.h>
/*funcao salvar*/
void Salvar(struct No *Pt)
{
int fp;
fp=open("Paradigmas",O_WRONLY|O_CREAT|O_TRUNC);
if (fp)
{
while(Pt)
{
write(fp,Pt,sizeof(struct No));
Pt=Pt->prox;
}
fp=close(fp);
if(fp==-1)
printf("\nFalha ao fechar arquivo\a");
}
else return;
}