Die Bedeutung des Wortes Puffer ist etwas, das direkt auf den Speicher wirkt, und der Prozess der Manipulation des Speichers, der nicht verwaltet wird und in Form einer Array-Byte-Darstellung vorliegt, wird in C# als Pufferung bezeichnet. Und die Mitglieder der Pufferklasse in C# sind BlockCopy(), das die Bytes von einem Array ausgehend von einem bestimmten Ort in ein anderes Array kopiert, beginnend von einem bestimmten Ort, und ByteLength(), mit dem die Gesamtzahl der Bytes im Array ermittelt werden kann , GetByte(), mit dem ein Byte an der angegebenen Position abgerufen werden kann, und SetByte(), mit dem ein Byte an der angegebenen Position im Array festgelegt werden kann.
Syntax:
Buffer.Buffer_member_name(parameters);
Wobei Buffer_member_name der Name der Mitglieder der Pufferklasse ist und
Parameter sind die ihm übergebenen Parameter.
Es gibt vier Mitglieder der Buffer-Klasse. Sie sind:
BlockCopy() ist ein Buffer-Mitglied, das die Bytes von einem Array ausgehend von einem bestimmten Ort in ein anderes Array kopiert, beginnend von einem bestimmten Ort.
ByteLength() ist ein Buffer-Mitglied, mit dem die Gesamtzahl der Bytes im Array ermittelt werden kann.
Unten ist das Beispiel:
C#-Programm zur Demonstration von Buffer-Mitgliedern der Klassen ByteCopy() und ByteLength()-Mitglieder zum Kopieren der Bytes von einem Array beginnend an einer bestimmten Position in ein anderes Array beginnend an einer bestimmten Position:
Code:
using System; //a class called program is defined public class program { //main method is called public static void Main(string[] args) { //an integer array is defined to store 4 integers int[] strarray1 = new int[4] { 100, 200, 300, 400 }; //another integer array is defined to store 7 integers int[] strarray2 = new int[7] { 0,0,0,0,500,600,700 }; Console.Write("The contents of the string array one before performing the Block operation is:\n"); //Bytelength() member of buffer class is used to find the bytelength of th given array Console.Write("The name of the array is strarray1 and the byte length of the array is :{0}\n", Buffer.ByteLength(strarray1)); for (int j = 0; j < strarray1.Length; j++) { Console.Write(strarray1[j]); Console.Write("\n"); } Console.Write("The contents of the string array two before performing the Block copy operation is:\n"); Console.Write("The name of the array is strarray2 and the byte length of the array is :{0}\n", Buffer.ByteLength(strarray2)); for (int a = 0; a < strarray2.Length; a++) { Console.Write(strarray2[a]); Console.Write("\n"); } //Blockcopy() member of buffer class is used to copy the contents of one array starting from the location specified by the second parameter to another array starting from the location specified by fourth parameter and last parameter signifies the bytelength of the first array Buffer.BlockCopy(strarray1, 0, strarray2, 0,Buffer.ByteLength(strarray1)); Console.Write("The contents of the string array one after performing the block copy operation is:\n"); Console.Write("The name of the array is strarray1 and the contents are :\n"); for (int b = 0; b < strarray1.Length; b++) { Console.Write(strarray1[b]); Console.Write("\n"); } Console.Write("The contents of the string array two after performing the block copy operation is:\n"); Console.Write("The name of the array is strarray2 and the contents are :\n"); for (int d = 0; d < strarray2.Length; d++) { Console.Write(strarray2[d]); Console.Write("\n"); } } }
Ausgabe:
Erklärung: Im obigen Programm ist eine Klasse namens Programm definiert. Anschließend wird die Methode main aufgerufen, in der zwei unterschiedlich große Integer-Arrays zur Speicherung der Integer-Werte definiert werden. Der Inhalt des ersten Arrays wird angezeigt und die Bytelänge des ersten Arrays wird mithilfe des ByteLength-Mitglieds der Buffer-Klasse angezeigt. Dann wird der Inhalt des zweiten Arrays angezeigt und die Bytelänge des zweiten Arrays wird mithilfe des ByteLength-Mitglieds der Buffer-Klasse angezeigt. Dann wird das Blockcopy()-Mitglied der Pufferklasse verwendet, um den Inhalt eines Arrays beginnend an der durch den zweiten Parameter angegebenen Position in ein anderes Array zu kopieren, beginnend an der durch den vierten Parameter angegebenen Position, und der letzte Parameter gibt die Bytelänge des ersten Arrays an . Anschließend wird der Inhalt des ersten Arrays nach dem Blockkopiervorgang angezeigt. Anschließend wird der Inhalt des zweiten Arrays nach dem Blockkopiervorgang angezeigt.
SetByte() ist ein Buffer-Mitglied der Buffer-Klasse, mit dem ein Byte an der angegebenen Stelle im Array gesetzt werden kann.
GetByte() ist ein Buffer-Mitglied der Buffer-Klasse, mit dem ein Byte an der angegebenen Position abgerufen werden kann.
Unten ist das Beispiel:
C#-Programm zur Demonstration von Buffer-Mitgliedern der Klasse SetByte() und GetByte()-Mitgliedern:
Code:
using System; //a class called check is defined class check { //main method is called static void Main() { //an inetger array is used to store the integers whose byte values are obtained by using GetByte member of buffer class int[] arrayname = { 0, 1, 512 }; for (inti = 0; i<Buffer.ByteLength(arrayname); i++) { Console.WriteLine(Buffer.GetByte(arrayname, i)); } // SetByte member of buffer class is used to set the byte values of the array Buffer.SetByte(arrayname, 0, 10); Buffer.SetByte(arrayname, 4, 20); Buffer.SetByte(arrayname, 8, 30); // The modified array after using SetByte member of the Buffer class is displayed Console.WriteLine("The modified array after using SetByte member of the Buffer class is:"); for (inti = 0; i<Buffer.ByteLength(arrayname); i++) { Console.WriteLine(Buffer.GetByte(arrayname, i)); } } }
Ausgabe:
Erklärung: Im obigen Programm ist eine Klasse namens check definiert. Dann wird die Hauptmethode aufgerufen, in der ein Ganzzahl-Array zum Speichern der Ganzzahlen verwendet wird, deren Bytewerte mithilfe des GetByte-Mitglieds der Pufferklasse erhalten werden. Dann wird das SetByte-Mitglied der Pufferklasse verwendet, um die Bytewerte des Arrays festzulegen. Anschließend wird das geänderte Array nach Verwendung des SetByte-Mitglieds der Buffer-Klasse angezeigt. Die Ausgabe ist im Schnappschuss oben dargestellt.
In diesem Tutorial verstehen wir das Konzept von Buffer in C# durch Definition, Syntax, Funktionsweise und Mitglieder der Buffer-Klasse anhand von Programmierbeispielen und deren Ausgaben.
Dies ist eine Anleitung zum C#-Puffer. Hier besprechen wir die Einführung in den C#-Puffer und seine Funktionsweise zusammen mit seinen Beispielen und der Code-Implementierung. Sie können auch unsere anderen empfohlenen Artikel durchsehen, um mehr zu erfahren –
Das obige ist der detaillierte Inhalt vonC#-Puffer. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!