Possible en double:
What are the | and^operators used for?En C#, que fait le personnage ^?
En C# qu'est-ce que le caractère^faire?
Possible en double:
What are the | and^operators used for?En C#, que fait le personnage ^?
En C# qu'est-ce que le caractère^faire?
Cet opérateur est binaire XOR
.
Les opérateurs binaires^sont prédéfinis pour les types et les entiers. Pour types intégrales,^calcule le bit exclusif de ses opérandes. Pour les opérandes bool ,^calcule le logique exclusif ou de ses opérandes; c'est-à-dire, le résultat est vrai si et seulement si exactement un de ses opérandes est vrai.
Jetez un oeil à MSDN ^ Operator (C# Reference)
Il est le logical XOR operator.
Le caractère^charater ou 'caret' est un opeartor XOR bit à bit. par exemple.
using System;
class Program
{
static void Main()
{
// Demonstrate XOR for two integers.
int a = 5550^800;
Console.WriteLine(GetIntBinaryString(5550));
Console.WriteLine(GetIntBinaryString(800));
Console.WriteLine(GetIntBinaryString(a));
Console.WriteLine();
// Repeat.
int b = 100^33;
Console.WriteLine(GetIntBinaryString(100));
Console.WriteLine(GetIntBinaryString(33));
Console.WriteLine(GetIntBinaryString(b));
}
/// <summary>
/// Returns binary representation string.
/// </summary>
static string GetIntBinaryString(int n)
{
char[] b = new char[32];
int pos = 31;
int i = 0;
while (i < 32)
{
if ((n & (1 << i)) != 0)
{
b[pos] = '1';
}
else
{
b[pos] = '0';
}
pos--;
i++;
}
return new string(b);
}
}
^^^ Output of the program ^^^
00000000000000000001010110101110
00000000000000000000001100100000
00000000000000000001011010001110
00000000000000000000000001100100
00000000000000000000000000100001
00000000000000000000000001000101
http://stackoverflow.com/q/3735623 – Alex
Une utilisation supplémentaire de "^" en C#, ou dont au moins apparaît dans toute la documentation .NET sans aucune explication, est la « poignée à l'opérateur de l'objet. " Ceci est une chose C++ qui marque un objet pour la collecte des ordures de sorte que vous n'avez pas à vous soucier de la mémoire vous-même. C'est sur tous les documents MSDN .NET par exemple. 'SomeMethod (Chaîne ^, IDictionary ^)', mais n'est explicite nulle part. La seule chose qui apparaît dans Google ou SE en ce qui concerne "^" en C# est cette réponse de "XOR", ce qui est complètement différent. https://msdn.microsoft.com/en-us/library/yk97tc08.aspx –
mc01
C'est la réponse que je cherchais. –