From: C. <al...@br...> - 2000-10-26 02:03:26
|
Olá pessoal (e principalmente os coders :)), se leram meu e-mail anterior, devem estar cientes do fato de que eu estou querendo usar listas encadeadas no acesso ao arquivo de configuração. Bom, vou explicar a idéia que eu tive, aí vocês avaliam se eu fiquei doido, se eu perdi o juízo momentaneamente ou se já é caso de hospício mesmo. :PPP Teremos a seguinte estrutura: struct isp { char *isp; /* nome do provedor */ char *username; /* nome de usuario (login) */ char *string; /* é necessário isso ??? */ char *fones; /* números de acesso */ char *dns1; /* dns primario */ char *dns2; /* dns secundario */ int rediscar; /* numero de tentativas de rediscagem */ int debug /* é necessário isso ??? */ char *next; /* proxima estrutura do tipo isp */ }; Bom, aí podemos fazer um typedef prá simplificar e criar o novo tipo de dado: #typedef struct isp provedor Aí, abrimos o arquivo de configuração, pegamos os dados e jogamos na struct (prá cada provedor): provedor *prov strcpy(prov->isp, "nome_do_provedor"); /* onde 'nome_do_provedor' seria pego do arquivo */ e assim por diante, até termos todo o arquivo de configuração armazenado na lista encadeada (inclusive a seção GLOBAL). Se o usuário alterar alguma coisa, basta fazermos: prov->dado = novo_valor ; resumindo, na memória é bem simples de modificar os dados... aí depois, na hora de gravar o arquivo, abrimos ele prá gravação, desprezando o seu conteúdo: arquivo = fopen("arquivo", "w+"); e gravamos sequencialmente (através de um loop) toda a informação contida na lista (nos diversos nós) no arquivo. while (!primeira_estrutura->next) { write(........); } E aí, o que vcs acham ??? Eu pirei de vez ??? Não pirei ??? Dêem sua opinião porque no nosso projeto, TODOS decidem! :-)))) []'s -- André Casteliano Analista de Sistemas +-=-=[ dig...@us...]=-=-+ [ Linux User: # 178853 Machine: # 79923 ] [ Linux Heavy User - Powered by Slackware 7.1 ] [ http://www.geocities.com/andre_casteliano/ ] +-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+ [ LinuxCall - The Linux Dialer ] [ http://linuxcall.sourceforge.net ] +-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+ |