我正在使用宇宙做一個簡單的操作系統。 我是c#的初學者。 cosmos默認代碼中的Run()方法循環直到我退出VMware。但是,一旦我修好了一點,我的程序就會自動退出。我不明白爲什麼。我試圖讓它循環。 科斯莫的默認代碼之前,我修正:c#運行方法不循環
public class Kernel : Sys.Kernel
{
protected override void BeforeRun()
{
Console.WriteLine("Cosmos booted successfully. Type a line of text to get it echoed back.");
}
protected override void Run()
{
Console.Write("Input: ");
var input = Console.ReadLine();
Console.Write("Text typed: ");
Console.WriteLine(input);
}
}
下面是我的新的run()方法。其他一切都保持不變。
protected override void Run() {
Console.WriteLine("Input:");
String input = Console.ReadLine();
if (input.StartsWith("echo"))
{
var index = input.IndexOf("echo");
var initial = input.Substring(0, index);
var final = input.Substring(index + "echo".Length);
var echoInput = initial + final;
Console.WriteLine(echoInput);
}
}
馬可福音嗨,你是什麼意思試圖讓它循環?你到了可以輸入輸入的地步嗎?你是什麼意思**我的代碼自動退出**所以如果你輸入** _ echo這是測試_ **你應該看到** _這是測試_ **在我修復之前在控制檯上打印出 – jmesolomon
Run()方法直到我自動退出VMware。但是在我修復之後,只要我輸入,VMware就會退出。我沒有看到我的字符串打印在控制檯上。 –
你可以在'if'語句之後添加'Console.ReadKey()'。這應該保持控制檯打開,直到你點擊一個鍵。 – jmesolomon