Ir para o conteúdo
bertolo

erro impossivel! estruturas

Mensagens Recomendadas

bertolo    0
bertolo

#include <stdio.h>

struct DADOS
{
char vector[51];
int a;
float b;
}tiago;

main(){

tiago.vector="Fonseca Galhao";
tiago.a=58112;
tiago.b=1.80;

printf("\n\nNome:%s\nNumero:%d\nAltura:%.2f\n",tiago.vector,tiago.a,tiago.b);

}

nao se compreende pq e que da imcompatible types in assignment na linha:

tiago.vector="Fonseca Galhao";

ajudem pff!!!

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
shumy    17
shumy

Isso é uma daquelas coisas estranhas de C.

É preciso percer bem como funcionam essas string em C.

Quando tu usas "qualquer coisa" o que o campilador faz é criar um const char[<número de caracteres>]

Quando tentas assignar um ponteiro constante (ponteiros e array para esta situação são a mesma coisa) a outro não constante, falha, isto porque o ponteiro constante não pode ser alterado, e ao colocar numa variavel que pode ser alterada (não constante) passava a violar esse contracto inicial.

Solução:

usa strcpy(...)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade