我目前正在编写一种编程语言,我的朋友让我把它转换成一个控制台应用程序,到目前为止它一直没有顺利
if (input.Contains(""))
{
string name = input.Substring(0, 3);
string value = input.Substring(4);
Console.WriteLine("Name:" + name + " " + "Value:" + value);
vars[Convert.ToInt32(name)] = value;
}
Run Code Online (Sandbox Code Playgroud)
vars[Convert.ToInt32(name)] = value;当我在它上面的前3行运行它时,说的一直给我错误的工作这是我在控制台中输入的一个例子,str Hello它会打印Name:str Value:Hello但是它会停止程序并显示我这个错误
输入字符串的格式不正确.
我不熟悉这个错误,但是如果你曾经在Lua中编程过,这就是我想要完成的
elseif line:match("^int") then
local n, v = line:match("^int (.+) = (%d+)")
vars[n] = v
Run Code Online (Sandbox Code Playgroud)
我总是遇到C#中的数组问题,所以如果你能告诉我什么是错的,它会对我有很大的帮助,在此先感谢.
听起来你实际上想要Dictionary拥有一个名称和价值的键值对.您只能int在数组上使用for索引,因此字典允许您使用字符串值.
var inputDictionary = new Dictionary<string,string>();
if (input.Contains(""))
{
string name = input.Substring(0, 3);
string value = input.Substring(4);
Console.WriteLine("Name:" + name + " " + "Value:" + value);
inputDictionary.Add(name, value);
}
Run Code Online (Sandbox Code Playgroud)