Outra questão!

4 respostas
F

Quais das expressões abaixo são legais?

a) int x=6;x=!x;

b) int x=6;if(!(x>3)){}

c) int x=6;x=~x

Justifique…

4 Respostas

M

b) e c) são legais… pois os operadores usados são todos aplicados a inteiros… a) esta errada, pq o operador ! é usado em expressões booleanas…

D

“feliperod”:
Quais das expressões abaixo são legais?

a) int x=6;x=!x;

b) int x=6;if(!(x>3)){}

c) int x=6;x=~x

Justifique…

o q faz a instrução (x=~x) ??? nunca tinha visto issu…

flw… :slight_smile:

M

“Dilton”:
“feliperod”:
Quais das expressões abaixo são legais?

a) int x=6;x=!x;

b) int x=6;if(!(x>3)){}

c) int x=6;x=~x

Justifique…

o q faz a instrução (x=~x) ??? nunca tinha visto issu…

flw… :)

ela faz o seguinte, se tu tens um inteiro “x” declarado com:

e usar o operador ~ em cima de x, ele vai inverter os bits… ou seja, transforme o valor de x (numero 6) em binário, ficando:

0110

e, aplicando o operador ~ nesses bits, ficará 1001:

0110
~ ------
1001

logo, a expressão x = ~x inverterá todos os bits do valor de x…

D

“matheus”:

e usar o operador ~ em cima de x, ele vai inverter os bits… ou seja, transforme o valor de x (numero 6) em binário, ficando:

0110

e, aplicando o operador ~ nesses bits, ficará 1001:

0110
~ ------
1001

logo, a expressão x = ~x inverterá todos os bits do valor de x…

valeu ae matheus… :joia:

Criado 1 de dezembro de 2004
Ultima resposta 5 de dez. de 2004
Respostas 4
Participantes 3