我正在使用 cosmos 制作一个简单的操作系统。我是 C# 的初学者。cosmos 的默认代码循环中的 Run() 方法,直到我退出 VMware。但是,一旦我稍微修复一下,我的程序就会自动退出。我不明白为什么。我试图让它循环。我修复之前 Cosmo 的默认代码:
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);
}
}