Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> C Taal

C# Fundamentals: Invoer en Uitvoer Basis

C# Fundamentals: Invoer en Uitvoer Basis

Deze gids leidt u door de kern van C# invoer- en uitvoertechnieken, en toont hoe u gebruikersgegevens leest en resultaten betrouwbaar weergeeft.

C# Uitvoer

Om data naar de console te schrijven, biedt C# twee primaire methoden:

System.Console.WriteLine()
System.Console.Write()

Hierbij is System de namespace, Console een klasse binnen die namespace, en WriteLine en Write zijn methodes ervan.

Voorbeeld 1: Een String Printen met WriteLine()

using System;
namespace Sample {
    class Test {
        public static void Main(string[] args) {
            Console.WriteLine("C# is cool");
        }
    }
}

Het uitvoeren van het programma produceert:

C# is cool

Verschil Tussen WriteLine() en Write()

WriteLine() geeft de opgeleverde tekst weer en gaat naar een nieuwe regel, terwijl Write() tekst print zonder een regelterugloop toe te voegen.

Voorbeeld 2: WriteLine() en Write() Gebruiken

using System;
namespace Sample {
    class Test {
        public static void Main(string[] args) {
            Console.WriteLine("Print op ");
            Console.WriteLine("Nieuwe regel");
            Console.Write("Print op ");
            Console.Write("Dezelfde regel");
        }
    }
}

Output:

Print op Nieuwe regel
Print op Dezelfde regel

Variabelen en Literalen Printen

Zowel WriteLine() als Write() kunnen variabelen en literalen weergeven.

Voorbeeld 3: Variabelen en Literalen

using System;
namespace Sample {
    class Test {
        public static void Main(string[] args) {
            int value = 10; // Variabele
            Console.WriteLine(value); // Literal
            Console.WriteLine(50.05);
        }
    }
}

Resultaat:

10
50.05

Strings Samenvoegen met de + Operator

Strings kunnen gecombineerd worden met de + operator tijdens uitvoer.

Voorbeeld 4: Samengevoegde Uitvoer

using System;
namespace Sample {
    class Test {
        public static void Main(string[] args) {
            int val = 55;
            Console.WriteLine("Hello " + "World");
            Console.WriteLine("Value = " + val);
        }
    }
}

Resultaat:

Hello World
Value = 55

Geformatteerde Strings — Een Schonere Aanpak

Geformatteerde strings laten u plaatsaanduiders insluiten die tijdens runtime worden vervangen, wat de leesbaarheid verbetert en fouten vermindert.

In plaats van:

Console.WriteLine("Value = " + val);

gebruikt u:

Console.WriteLine("Value = {0}", val);

Hier is {0} een plaatsaanduider voor val. Meerdere variabelen worden afgehandeld met extra plaatsaanduidingen.

Voorbeeld 5: String Formattering Gebruiken

using System;
namespace Sample {
    class Test {
        public static void Main(string[] args) {
            int firstNumber = 5, secondNumber = 10, result;
            result = firstNumber + secondNumber;
            Console.WriteLine("{0} + {1} = {2}", firstNumber, secondNumber, result);
        }
    }
}

Output:

5 + 10 = 15

Deze methode is leesbaarder en minder foutgevoelig dan handmatige concatenatie.

Meer over string formatting in C# string formatting.


C# Invoer

De meest directe manier om gebruikersinvoer te vangen is Console.ReadLine(). Voor meer gedetailleerde invoer zijn Read() en ReadKey() ook beschikbaar.

Voorbeeld 6: Een String van de Gebruiker Lezen

using System;
namespace Sample {
    class Test {
        public static void Main(string[] args) {
            string testString;
            Console.Write("Voer een string in - ");
            testString = Console.ReadLine();
            Console.WriteLine("U heeft '{0}' ingevoerd", testString);
        }
    }
}

Output:

Voer een string in - Hello World
U heeft 'Hello World' ingevoerd

ReadLine(), Read(), en ReadKey() Begrijpen

  • ReadLine(): Leest een volledige regel uit de invoerstroom en retourneert deze als string.
  • Read(): Leest het volgende teken en retourneert de ASCII-waarde.
  • ReadKey(): Vangt een toetsaanslag op zonder op Enter te wachten; handig voor pauzeprompts.

Voor diepere inzichten, zie de StackOverflow discussie "Difference between Console.Read() and Console.ReadLine?".


Voorbeeld 7: Read() en ReadKey() Demonstreren

using System;
namespace Sample {
    class Test {
        public static void Main(string[] args) {
            int userInput;
            Console.WriteLine("Druk op een toets om door te gaan...");
            Console.ReadKey();
            Console.WriteLine();
            Console.Write("Invoer met Read() - ");
            userInput = Console.Read();
            Console.WriteLine("Ascii Waarde = {0}", userInput);
        }
    }
}

Output:

Druk op een toets om door te gaan...
x
Invoer met Read() - Learning C#
Ascii Waarde = 76

Let op dat ReadKey() de toets direct toont, terwijl Read() een regel vastlegt maar alleen de ASCII-code van het eerste teken retourneert (hier 76 voor 'L').


Numerieke Waarden Lezen

Terwijl strings direct worden gelezen, vereisen numerieke typen conversie. De Convert klasse biedt eenvoudige methodes.

Voorbeeld 8: Gebruikersinvoer Converteren naar Getallen

using System;
namespace UserInput {
    class MyClass {
        public static void Main(string[] args) {
            string userInput;
            int intVal;
            double doubleVal;
            Console.Write("Voer integer waarde in: ");
            userInput = Console.ReadLine();
            intVal = Convert.ToInt32(userInput);
            Console.WriteLine("U heeft {0} ingevoerd", intVal);
            Console.Write("Voer double waarde in: ");
            userInput = Console.ReadLine();
            doubleVal = Convert.ToDouble(userInput);
            Console.WriteLine("U heeft {0} ingevoerd", doubleVal);
        }
    }
}

Resultaat:

Voer integer waarde in: 101
U heeft 101 ingevoerd
Voer double waarde in: 59.412
U heeft 59.412 ingevoerd

De ToInt32() en ToDouble() methodes van Convert transformeren de invoerstring naar het gewenste numerieke type. Een volledige lijst met conversiemethodes is te vinden in de .NET documentatie.

Ontdek alternatieve strategieën voor numerieke invoer in Reading an integer from user input.

C Taal

  1. Een externe temperatuursensor bouwen met Raspberry Pi en Python – Stap-voor-stap handleiding
  2. Analoge sensoren verbinden met Raspberry Pi via MCP3008 – Bedrading, SPI-setup en voorbeeld Python-code
  3. Mailboxes in Nucleus SE: Een Practische Gids voor Configuratie en Gebruik
  4. Semaphores in Nucleus SE: Overzicht, Configuratie en API-Essenties
  5. Queues in Nucleus SE: Introductie en Kern-Service-Calls
  6. Cloudhorizonten Uitbreiden: Nieuwe Zones, Containers En Multicloud-strategieën
  7. Waarom Cloud Linux Beveiliging, Stabiliteit en Prestaties in Shared Hosting Verbetert
  8. C++ input en output: een praktische gids
  9. C Input en Output (I/O) Beheersen: scanf() en printf() Uitgelegd
  10. Python I/O en Module Imports onder de knie krijgen: Een praktische gids
  11. Java Input & Output beheersen: printen, lezen en formatteren