重新分配变量的值

时间:2012-02-14 18:58:06

标签: c#

我正在使用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”并在每次检查中包含两种可能的条件?

2 个答案:

答案 0 :(得分:5)

C#区分大小写。它应该是if而不是If。你也想写==而不是=进行相等测试。

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

答案 1 :(得分:0)

您大写If。编译器认为If是变量标识符(因此是表达式)而不是保留关键字if,这是您想要的。要解决您的问题,请将其设为小写if

如果我们使用逻辑运行,它会尝试使用您键入的内容构建一个语句,但您编写的内容不是有效的语法。如果在If之后加一个分号,那么它将是一个正确的表达式(假设If是一个有效的标识符,例如变量名)。之后,您会收到错误消息,指出If未定义。