Domanda

sto sviluppando un progetto semplice, ma come posso fare una ripetizione sempre una funzione Se (E 'come una riga di comando)? Grazie.

Il mio codice è simile a questo:

Console.Write("> ");
var Command = Console.ReadLine();
if (Command == "About") {
    Console.WriteLine("This Operational System was build with Cosmos using C#");
    Console.WriteLine("Emerald OS v0.01");
}
È stato utile?

Soluzione

string Command;
while (true) {
  Command = Console.ReadLine();
  if (Command == "About") {
    Console.WriteLine("This Operational System was build with Cosmos using C#");
    Console.WriteLine("Emerald OS v0.01");
  }
}

Altri suggerimenti

Per caso vuoi dire:

while( !(!(!(( (true != false) && (false != true) ) || ( (true == true) || (false == false) )))) == false   )
   {
       Console.Write("> ");
       if ("About" == Console.ReadLine())
       {
           Console.WriteLine("This Operational System was build with Cosmos using C#");
           Console.WriteLine("Emerald OS v0.01");
       }
   }

La tua domanda non è chiaro, ma probabilmente vuole fare qualcosa di simile:

while(true) {    //Loop forever
    string command = Console.ReadLine();
    if (command.Equals("Exit", StringComparison.OrdinalIgnoreCase))
        break;    //Get out of the infinite loop
    else if (command.Equals("About", StringComparison.OrdinalIgnoreCase)) {A
        Console.WriteLine("This Operational System was build with Cosmos using C#");
        Console.WriteLine("Emerald OS v0.01");
    }

    //...
}

Non credo che la tua domanda è molto chiara. Ma qui è un tentativo:)

while (true) {
   if (i ==j ) {
     // whatever
   }
}

Vuoi dire questo?

while(true) {
    if( ...) {
    }
}

PS: questo è uno dei miei preferiti hack preprocessore. Non funziona in C #, però, solo C / C ++.

#define ever (;;)

for ever {
    //do stuff
}

Credo che si desidera solo un ciclo while semplice, con (almeno) un punto di uscita.

while(true)
{
    Console.Write("> ");
    var command = Console.ReadLine();
    if (command == "about") {
        Console.WriteLine("This Operational System was build with Cosmos using C#");
        Console.WriteLine("Emerald OS v0.01");
    } else if (command == "exit") {
        break; // Exit loop
    }
}

Non è possibile utilizzare un 'se' dichiarazione di per sé, perché quando si arriva alla fine il vostro programma continuerà l'esecuzione l'istruzione successiva nel codice. Penso che quello che cercate è un 'po' affermazione che restituisce sempre true.

per es.

string Command; 
while(true)
{
    Command = Console.ReadLine(); 
    if (Command == "About")
    { 
        Console.WriteLine("This Operational System was build with Cosmos using C#"); 
        Console.WriteLine("Emerald OS v0.01");
    }
} 

Questo ciclo sarà inevitabile a meno che non viene generata un'eccezione o eseguire un'istruzione pausa (o qualunque sia l'equivalente è in C #, io sono un ragazzo Java - non odiarmi)

.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top