[C] Diferença entre "->" e "="

Cumps,
Alguém sabe a verdadeira diferença entre o sinal de atribuição "->" e "=" ? Por exemplo, é diferente escrever "x=3" ou "3->x" ?
Bgd

Deves estar a fazer um pouco de confusao o que existe é o sinal de atribuição que é o =
X=3 ou seja a variavel X vai tomar o valor 3
Existe o simbolo de igual que é o ==... será isso?
 
Cumps,
Alguém sabe a verdadeira diferença entre o sinal de atribuição "->" e "=" ? Por exemplo, é diferente escrever "x=3" ou "3->x" ?
Bgd
O "->" não é sinal de atribuição. Acho que é do C++, e está relacionado com objectos. Não estarás a confundir com TI-BASIC, em que fazes "valor->variável"? ;)
 
o -> é, se não estou em erro um apontador para memória...

int x;

int y -> x;

se x mudar, y também muda ao invés de

int y = x;

onde y tomaria o valor de x...
 
tal como o arpinacio disse, o -> usa-se quando se trabalha com apontadores em C++


Carro x;
x.matricula;
x é um objecto do tipo Carro...

Carro* y;
y->matricula;
(*y).matricula;

y contem um endereço de um objecto do tipo Carro
 
Última edição:
É a mesma coisa em C ou C++, a única diferença é que em C não há classes, mas pode haver estruturas.

Código:
struct
{
     float x;
     float y;
     float z;
} Ponto;

Ponto *ponto;

//atribuir um valor a x
ponto->x = 1.5;

//receber o valor de z
float z_aux = ponto->z;
 
É a mesma coisa em C ou C++, a única diferença é que em C não há classes, mas pode haver estruturas.

Código:
struct
{
     float x;
     float y;
     float z;
} Ponto;

Ponto *ponto;

//atribuir um valor a x
ponto->x = 1.5;

//receber o valor de z
float z_aux = ponto->z;

Exacto, não é restrito a C++. É aplicável em C a estruturas de dados, embora haja quem prefira usar, quando aplicável o "*(ponteiro).campo" (em vez de ponteiro->campo)
 
O "->" não é sinal de atribuição. Acho que é do C++, e está relacionado com objectos. Não estarás a confundir com TI-BASIC, em que fazes "valor->variável"? ;)
Lol, não, eu tinha quase a certeza que era usado o "->" em C ;)
Deves estar a fazer um pouco de confusao o que existe é o sinal de atribuição que é o =
X=3 ou seja a variavel X vai tomar o valor 3
Existe o simbolo de igual que é o ==... será isso?
Bom,a resposta é dada em baixo ;):
tal como o arpinacio disse, o -> usa-se quando se trabalha com apontadores em C++


Carro x;
x.matricula;
x é um objecto do tipo Carro...

Carro* y;
y->matricula;
(*y).matricula;

y contem um endereço de um objecto do tipo Carro



Obrigado a todos, estamos sempre a aprender:x2:
 
Back
Topo