Editor de Texto em C usando Lista Duplamente Encadeada

Delphi

27/05/2003

Preciso de um Editor de Texto com seus fontes em C++, usando Lista Duplamente Encadeada, não tenho ideia como fazer, e por isso preciso para poder aprender... Se alguém tiver e puder me mandar os fontes ou me indicar algum site.

Desde já muito obrigado.


Edusgouveia

Edusgouveia

Curtidas 0

Respostas

Flavio Sanches

Flavio Sanches

27/05/2003

ola, nao sei em que parte do editor de texto vc usara a lista duplamente encadeada. mas ai vai a teoria
uma lista encadeada e uma estrutura q aponta para outra estrutura do seu proprio tipo no caso de uma duplamente encadeada, ele deve apontar para a proxima estrutura da lista e para a anterior
a estrutura se define assim por exemplo:

struct lista
{
char data; // a informacao este no guarda
struct lista *proxima, *anterior;

}; typedeff struct lista lista;

e geralmente vc tem um no principal q vem antes de todos, este geralmente guarda os ponteiros do primeiro e do ultimo no da lista por exemplo

struct pai
{
int numero_de_nos;
lista *primeiro;
lista *ultimo;
} typedef struct pai pai;


logo basta vc alocar memoria, seja com malloc ou GlobalAlloc (caso seja em windows)
e passar a area de memmoria pra estrutura pra criar um novo no;

lista *nova;

// isso cria uma nova lista
nova = (char *) GloballAlloc(GPTR,sizeof(struct lista));
// atualiza o numero de nos
pai.numero_de_nos++;
// entao vc checa pra ver se a lista estiver vazia a primeira e a ultima posicao serao iguais logo:
pai.primeiro = pai.ultimo = &
// caso nao seja vc so ira acrescentar um no a ultima posicao assim:
nova->anterior = &pai.ultima;
nova->proximo = NULL; // isso evita dires de cabeca !
pai.ultima = &



e mais ou menos isso!
um abraco.


GOSTEI 0
Flavio Sanches

Flavio Sanches

27/05/2003

obs:
&nova
e
&nova
onde so saiu & aki em cima!
desculpe!


GOSTEI 0
POSTAR