Denis Bittencourt Muniz Postado Dezembro 4, 2005 Denunciar Share Postado Dezembro 4, 2005 Fala gente!Queria saber qual a finalidade desses operadores: & | ^ ~.Gostaria, se possível, comparar a função desses operadores com o os operadores do Visual Basic. Por exemplo:Modulação:Em VB: 'Mod'Em C#: '%'Gostaria também saber se o C# tem algum operador com a mesma função do operador 'Like' do Visual Basic.Grato desde já! Falows! Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Dezembro 4, 2005 Denunciar Share Postado Dezembro 4, 2005 Fala gente!Queria saber qual a finalidade desses operadores: & | ^ ~.Gostaria, se possível, comparar a função desses operadores com o os operadores do Visual Basic.& = Andhttp://msdn.microsoft.com/library/en-us/cs...andoperator.asp| = Orhttp://msdn.microsoft.com/library/en-us/cs...baroperator.asp^ = Xorhttp://msdn.microsoft.com/library/en-us/cs...eoroperator.asp~ = Complemento - Acho que não tem equivalente no VB.NET.http://msdn.microsoft.com/library/en-us/cs...rf~operator.aspPara uma lista completa:http://msdn.microsoft.com/library/default....rpoperators.aspPor exemplo:Modulação:Em VB: 'Mod'Em C#: '%'Esse operador se chama "Modulus" é o resto da divisão de um número por outro.Gostaria também saber se o C# tem algum operador com a mesma função do operador 'Like' do Visual Basic.Que eu saiba não. Mas, a utilização de expressões regulares pode realizar a mesma função do operador Like. Dê uma olhada nestas páginas:http://msdn.microsoft.com/library/default....Expressions.asphttp://msdn.microsoft.com/library/default....sionclasses.aspAbraços,Graymalkin Link para o comentário Compartilhar em outros sites More sharing options...
0 Denis Bittencourt Muniz Postado Dezembro 4, 2005 Autor Denunciar Share Postado Dezembro 4, 2005 Desculpe pelo meu questionamento, mas '&&' não seria o 'And'? E '||' não seria o 'Or'? Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Dezembro 4, 2005 Denunciar Share Postado Dezembro 4, 2005 Desculpe pelo meu questionamento, mas '&&' não seria o 'And'? E '||' não seria o 'Or'? Não, && e || têm curto-circuito, por isso são os equivalentes a AndAlso e OrElse do VB.NET, respectivamente.Certo? Graymalkin Link para o comentário Compartilhar em outros sites More sharing options...
0 Denis Bittencourt Muniz Postado Dezembro 4, 2005 Autor Denunciar Share Postado Dezembro 4, 2005 Me desculpe pela ignorância, mas o que seria 'curto-circuito' em operadores? Você poderia me explicar com suas próprias palavras, pois no site da Microsoft, a MSDN está em inglês.Grato. Falows! Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Dezembro 4, 2005 Denunciar Share Postado Dezembro 4, 2005 Me desculpe pela ignorância, mas o que seria 'curto-circuito' em operadores? Você poderia me explicar com suas próprias palavras, pois no site da Microsoft, a MSDN está em inglês.O curto-circuito é testar apenas o primeiro operando, e de acordo com o valor dele testar ou não o segundo. Em uma operação And, se logo o primeiro operando for Falso nem é necessário testar o segundo para saber que o resultado será Falso (já que ambos devem ser Verdadeiros para que o resultado seja Verdadeiro). É isso que && e AndAlso fazem. O mesmo vale para uma operação Or, pois se logo o primeiro operando for Verdadeiro, o resultado será Verdadeiro (já que basta apenas um dos operandos ser Verdadeiro para que o resultado seja Verdadeiro). É isso que || e OrElse fazem.Certo? Graymalkin Link para o comentário Compartilhar em outros sites More sharing options...
0 Denis Bittencourt Muniz Postado Dezembro 4, 2005 Autor Denunciar Share Postado Dezembro 4, 2005 Mas Graymalkin, qual a vantagem nisso? Você poderia postar um exemplo para que eu realmente possa ver a diferença de '&' e '&&' e, também, '|' e '||'.Grato. Falows! Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Dezembro 5, 2005 Denunciar Share Postado Dezembro 5, 2005 O interessante de se utilizar o curto-circuíto é que mesmo que o segundo operando possa gerar um erro o primeiro operando é que vai definir se ele vai ser executado ou não. Os dois casos abaixo gerariam erros se os operadores | e & fossem utilizados:int divisor = 0; int valor = 5; if ((valor>0) || ((valor/divisor)>0)) Console.WriteLine("Valor é maior que 0!"); No caso acima, o segundo operando tenta dividir um valor ("valor") por zero ("divisor"). Porém, como o primeiro operando vai ser desenvolvido para Verdadeiro, o segundo não vai ser executado. string s = ""; string[] elementos = s.Split(';'); if ((elementos.Length>1) && (elementos[1]=="qualquer coisa")) Console.WriteLine("É qualquer coisa!"); else Console.WriteLine("Não é qualquer coisa!");Neste caso, o segundo operando tenta acessar a segunda posição (1) do vetor (e esta posição não existe), porém como o primeiro operando vai evoluir para Falso (o tamanho do vetor vai ser 1), o segundo não será executado.As palavras-chaves destes operadores ficam mais claras no VB.NET, já que "AndAlso" significa "E Também" e "OrElse" significa "Ou Senão" (semanticamente diferentes de "E" e "Ou").Certo? Graymalkin Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Denis Bittencourt Muniz
Fala gente!
Queria saber qual a finalidade desses operadores: & | ^ ~.
Gostaria, se possível, comparar a função desses operadores com o os operadores do Visual Basic. Por exemplo:
Modulação:
Em VB: 'Mod'
Em C#: '%'
Gostaria também saber se o C# tem algum operador com a mesma função do operador 'Like' do Visual Basic.
Grato desde já! Falows!
Link para o comentário
Compartilhar em outros sites
7 respostass a esta questão
Posts Recomendados