zorkim Posted March 6, 2012 Report Share Posted March 6, 2012 Crie um programa que coloque os números de 1 a 4 em nós de lista simplesmente encadeada e, logo após, imprima-os em ordem na tela.Quero deixar claro que usei o Dev, Netbeans e open watcom sendo que em nenhum compilou.--------------------------------------------------------------------------#include <stdio.h>#include <conio.h>#include <stdlib.h>struct lista{int dado;struct lista* prox;};int n;typedef struct lista Lista;void insere_no(Lista** ini){Lista *no,*p;if (*ini == NULL){no = (Lista*) malloc (sizeof(struct lista));(*no).dado = n;(*no).prox = NULL;*ini = no;}else{p = *ini;while((*p).prox != NULL){p = (*p).prox;}no = (Lista*) malloc (sizeof(Lista));(*no).dado = n;(*p).prox = no;(*no).prox = NULL; }}int main(){int k=0;Lista *inim;Lista *q;inim = NULL;for (k=0;k<4;k++){n = k+1;insere_no(&inim); //Quando inim é mandado pela segunda vez, quebra, ou seja, *ini não contem mais o endereço do inim que tinha 1 em inim->dado.printf("%d",inim->dado);}q=inim;while (q!=NULL){printf(" %d |",(*q).dado);q = (*q).prox;}getch();}Erro no Dev 4.9.9.2 :i:\gw\lib\crt2.o(.text+0x8) In function `_mingw_CRTStartup': [Linker error] undefined reference to `__dyn_tls_init_callback' [Linker error] undefined reference to `__cpu_features_init' i:\gw\lib\crt2.o(.text+0x8) ld returned 1 exit status Quote Link to comment Share on other sites More sharing options...
0 General Shepherd Posted March 6, 2012 Report Share Posted March 6, 2012 Você está com problema na linkagem das bibliotecas pelo jeito. O programa está correto. Compilei aqui de boa no CodeBlocks. Esse mesmo erro já aconteceu comigo, mas não tenho certeza qual é o motivo, tente reinstalar o Dev ;D Quote Link to comment Share on other sites More sharing options...
Question
zorkim
Crie um programa que coloque os números de 1 a 4 em nós de lista simplesmente encadeada e, logo após, imprima-os em ordem na tela.
Quero deixar claro que usei o Dev, Netbeans e open watcom sendo que em nenhum compilou.
--------------------------------------------------------------------------
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
struct lista
{
int dado;
struct lista* prox;
};
int n;
typedef struct lista Lista;
void insere_no(Lista** ini)
{
Lista *no,*p;
if (*ini == NULL)
{
no = (Lista*) malloc (sizeof(struct lista));
(*no).dado = n;
(*no).prox = NULL;
*ini = no;
}
else
{
p = *ini;
while((*p).prox != NULL)
{
p = (*p).prox;
}
no = (Lista*) malloc (sizeof(Lista));
(*no).dado = n;
(*p).prox = no;
(*no).prox = NULL;
}
}
int main()
{
int k=0;
Lista *inim;
Lista *q;
inim = NULL;
for (k=0;k<4;k++)
{
n = k+1;
insere_no(&inim); //Quando inim é mandado pela segunda vez, quebra, ou seja, *ini não contem mais o endereço do inim que tinha 1 em inim->dado.
printf("%d",inim->dado);
}
q=inim;
while (q!=NULL)
{
printf(" %d |",(*q).dado);
q = (*q).prox;
}
getch();
}
Erro no Dev 4.9.9.2 :
i:\gw\lib\crt2.o(.text+0x8) In function `_mingw_CRTStartup':
[Linker error] undefined reference to `__dyn_tls_init_callback'
[Linker error] undefined reference to `__cpu_features_init'
i:\gw\lib\crt2.o(.text+0x8) ld returned 1 exit status
Link to comment
Share on other sites
1 answer to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.