2012-02-14 18 views
-1

私はC#を使用していて、テキスト行(ln)を読み込んで画像ボックスに画像を割り当てています。イメージが選択された後、私はそれが夜か昼であるかどうかをチェックし、太陽が終わったら選択したイメージを夜のバージョンに変更しようとします。変数の値を再割り当て

 charPos = ln.IndexOf("partly cloudy", 0); 
     if (charPos > -1) 
     { 
      skyimg = "sct.jpg"; 
      skymsg = "Partly Cloudy"; 
      If (AMPM = "P") skyimg = "nsct.jpg"; 
     } 

コンパイラは、私はセミコロンを欠けていると、ちょうどその第二の「if」のチェックを好きではないと言われます。 "else if"を使用し、各チェックに両方の条件を含める必要がありますか?

答えて

5

C#で大文字と小文字が区別されます。 Ifではなく、ifにする必要があります。また、平等テストのために=ではなく==と書くことを意味します。

if (AMPM == "P") skyimg = "nsct.jpg"; 
0

Ifを大文字にします。コンパイラはIfがあなたが望むものである予約語ifではなく、可変識別子(したがって式)であると考えています。問題を解決するには、小文字のifにしてください。

ロジックを使用して実行すると、入力した文でビルドしようとしていますが、書いたものは有効な構文ではありません。 Ifの後にセミコロンを付けると、正しい表現になります(Ifが有効な識別子、たとえば変数名であると仮定して)。その後、Ifが定義されていないというエラーが表示されます。

関連する問題