erros...me ajude...

1. erros...me ajude...

Spyer
spy_linux

(usa Outra)

Enviado em 22/11/2010 - 10:09h

Gaçera me ajude com esses erros...num consigui tirar! Obrigado.
Erros:
-------

H:\Trabalho\ordena.c:9: error: syntax error before "tlista"
H:\Trabalho\ordena.c:9: warning: no semicolon at end of struct or union
H:\Trabalho\ordena.c:12: error: syntax error before '*' token
H:\Trabalho\ordena.c:12: error: syntax error before '*' token

H:\Trabalho\ordena.c: In function `lu_insereinicio':
H:\Trabalho\ordena.c:14: error: `tlista' undeclared (first use in this function)
H:\Trabalho\ordena.c:14: error: (Each undeclared identifier is reported only once
H:\Trabalho\ordena.c:14: error: for each function it appears in.)
H:\Trabalho\ordena.c:14: error: `aux' undeclared (first use in this function)
H:\Trabalho\ordena.c:15: error: syntax error before ')' token
H:\Trabalho\ordena.c:16: error: `pn' undeclared (first use in this function)
H:\Trabalho\ordena.c:17: error: `plst' undeclared (first use in this function)
H:\Trabalho\ordena.c: At top level:
H:\Trabalho\ordena.c:21: error: syntax error before '*' token
H:\Trabalho\ordena.c: In function `lu_exibelista':
H:\Trabalho\ordena.c:23: error: `tlista' undeclared (first use in this function)
H:\Trabalho\ordena.c:23: error: `aux' undeclared (first use in this function)
H:\Trabalho\ordena.c:23: error: `plst' undeclared (first use in this function)
H:\Trabalho\ordena.c: In function `main':
H:\Trabalho\ordena.c:35: error: `tlista' undeclared (first use in this function)

H:\Trabalho\ordena.c:35: error: `list' undeclared (first use in this function)

H:\Trabalho\ordena.c:39:22: warning: unknown escape sequence '\D'
H:\Trabalho\ordena.c:39:22: warning: unknown escape sequence '\L'
H:\Trabalho\ordena.c:39:22: warning: unknown escape sequence '\D'
H:\Trabalho\ordena.c:39:22: warning: unknown escape sequence '\T'
H:\Trabalho\ordena.c:56: error: stray '\231' in program
H:\Trabalho\ordena.c:56: error: stray '\227' in program
H:\Trabalho\ordena.c:56: error: `ordena_sele' undeclared (first use in this function)
H:\Trabalho\ordena.c:56: error: syntax error before "o"
H:\Trabalho\ordena.c: At top level:
H:\Trabalho\ordena.c:69: error: stray '\231' in program
H:\Trabalho\ordena.c:69: error: stray '\227' in program
H:\Trabalho\ordena.c:69: error: syntax error before "o"

Código:
-------

#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <ctype.h>

typedef struct tlista{
int n;
tlista *prox;
};

tlista *lu_insereinicio(tlista *plst, int pn)
{
tlista *aux;
aux = (tlista*)malloc(sizeof(tlista));
aux -> n = pn;
aux -> prox = plst;
return aux;
}

lu_exibelista(tlista *plst)
{
tlista *aux = plst;

while (aux != NULL)
{
printf("%d, ", aux -> n);
aux = aux -> prox;
}
}

int main()
{
int num; // ESTE É O NUMERO QUE SERÁ LIDO DO ARQUIVO E PASSADO PARA A LISTA
tlista *list; // ESTOU CRIANDO A LISTA, NADA DE NOVO
list = NULL;
FILE *arquivo; // REFERENCIA DO ARQUIVO, SEMPRE QUE FOR UTILIZAR O ARQUIVO
// SERA REFERENDIDO-SE PELO arquivo
arquivo = fopen("C:\Documents and Settings\Leandro\Desktop\Trabalho\numeros.dat","r"); // O FOPEN ABRE O ARQUIVO, NO CASO
// É PASSADO POR PARAMETRO O ENDEREÇO
// DO ARQUIVO, E O "r" SIGNIFICA QUE
// O ARQUIVO ESTÁ SENDO ABERTO APENAS
// PARA LEITURA

if (arquivo) // CASO NAO TENHA DADO ERRO AO ABRIR O ARQUIVO
{
do
{
fscanf(arquivo,"%d",&num ); // O FSCANF É IDENTICO AO SCANF QUE
// TODOS CONHECEM, PORÉM ELE É
// UTILIZADO PARA LER DADOS DE
// ARQUIVOS, E É PASSADO COMO
// PARAMETRO, O PROPRIO ARQUIVO
// QUE ESTA SENDO LIDO

ordena_seleção(int num[], int tam);
list = lu_insereinicio(list, num); // INSERE O NUMERO NA LISTA
}while(!feof(arquivo)); // ELE PERCORRERÁ TODAS AS LINHAS DO ARQUIVO
// ENQUANTO O ARQUIVO NAO CHEGAR AO FIM
// FEOF = END OF FILE
}

lu_exibelista(list); // EXIBE A LISTA
fclose(arquivo); // FECHA O ARQUIVO
system("pause>NULL");
}
//-------------------------------------------------------------------------------------------------------------

void ordena_seleção(int num[], int tam) {
int i, j, min;
for (i = 0; i < (tam-1); i++) {
min = i;
for (j = (i+1); j < tam; j++) {
if(num[j] < num[min]) {
min = j;
}
}
if (i != min) {
int swap = num[i];
num[i] = num[min];
num[min] = swap;
}
printf(" %d",num[ i ]);
}
}



  


2. Re: erros...me ajude...

Mailon Couto Berni
mailoncouto

(usa Ubuntu)

Enviado em 22/11/2010 - 11:35h

Me desculpe mas me tira uma duvida o porque esta usando o * para as variáveis ?
e lu_exibelista e AUX. você não abriu a variável.. precisa abrir :D
se não me engano e isso se eu estiver errado me corrija
a unica coisa que voce abriu as variaveis foi essa
typedef struct tlista{
int n;
tlista *prox;
};
vlw!!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts