我一直在C#編程大約一年,通常我會忽略某處的細節,從而陷入這樣的問題。我覺得我正在這樣做,但我似乎無法解決問題。我有一個名爲'input'的字符串變量,我在'Main'類中聲明瞭'if'語句,如下所示:
string input = Console.Readline();
作爲單獨的'if'語句,寫這:當前上下文中不存在名稱'輸入'
if (input != null || input != 0)
{
//I have code for this part, but it is irrelevant
}
else
{
//And this part, but it is also irrelevant
}
我的問題是,MonoDevelop的是在第二個「如果」聲明同時強調「輸入」變量,並說「輸入名稱不會在目前的背景下存在」。我覺得我正在俯視一些東西,任何幫助將不勝感激。 我完整的代碼是這樣的:需要
using System;
namespace ConsoleTest
{
class MainClass
{
public static string version = "0.0.1";
public static string precursor = "/:>";
public static void Main (string[] args)
{
Console.Write ("Console Test ");
Console.WriteLine (version);
Console.Write (precursor);
string start = Console.ReadLine();
if (start == "start") {
while (true) {
Console.WriteLine ("Started");
Console.Write (precursor);
string input = Console.ReadLine();
}
} else {
Environment.Exit (0);
}
if (input != null || input != 0) {
//Code
} else {
Console.WriteLine("Error: Input null");
}
}
}
}
我們需要在現場看到它們。您還沒有提到是否有不同的方法或其他可能會改變變量範圍的結構代碼。 – cjk 2013-03-26 13:32:26
我們有*無*線索你聲明'輸入'與這個代碼是在哪裏。基本上,我們沒有足夠的上下文來幫助你。例如,你是否在構造函數中將'input'聲明爲局部變量,然後嘗試在單獨的方法中訪問它?或者,它可能是一個實例變量,你試圖在靜態方法中使用它?如果它*是一個字符串變量,爲什麼你試圖將它與0進行比較? – 2013-03-26 13:32:32
請顯示完整的上下文 – 2013-03-26 13:33:14