首页 新闻 会员 周边 捐助

C#未将对象引用设置到对象的实例

0
悬赏园豆:100 [已解决问题] 解决于 2017-11-24 23:44

//串定位
        public int IndexOf(SeqString s, int starpos)
        {
            SeqString sub = this.SubString(starpos, this.GetLength() - starpos);
            if (sub.GetLength() < s.GetLength())
            {                
                MessageBox.Show("找不到需要的字符串!");
                return -1;
            }
            int i, j, v;
            i = 0; j = 0;
            while (i < sub.GetLength() && j < s.GetLength())
            {
                if (sub.data[i] == s.data[j])
                {
                    i++;
                    j++;
                }
                else
                {
                    i = i - j + 1;
                    j = 0;
                }
            }
            if (j == s.GetLength())
                v = i - s.GetLength() + starpos;
            else
                v = -1;
            return v;
        }

C#
问题补充:

我是我最后的目击者的主页 我是我最后的目击者 | 初学一级 | 园豆:88
提问于:2017-11-24 23:25
< >
分享
最佳答案
0

入参SeqString s为空了。

收获园豆:100
Daniel Cai | 专家六级 |园豆:10424 | 2017-11-24 23:28

用控制台程序这样写可以用啊,为啥改成窗体就不行了

我是我最后的目击者 | 园豆:88 (初学一级) | 2017-11-24 23:29

@想和你一日三餐: 。。。。这是你自己前面调用的问题了。

Daniel Cai | 园豆:10424 (专家六级) | 2017-11-24 23:33

@Daniel Cai: 你好,你能帮我看看我的代码吗?我是新手才开始写这个,如果可以的话,不胜感激,不管怎么样还是谢谢你!

我是我最后的目击者 | 园豆:88 (初学一级) | 2017-11-24 23:42

@想和你一日三餐: 没有上下文没办法看啊。你至少要把怎么调到这个方法的逻辑代码给贴出来吧。

Daniel Cai | 园豆:10424 (专家六级) | 2017-11-24 23:45

@想和你一日三餐: 

OneToHundredA.cs中字段tenanswer没有赋值

Daniel Cai | 园豆:10424 (专家六级) | 2017-11-25 00:12

@Daniel Cai: 我上面不是有一个调用Hundred(daren)函数吗,在那个函数里面有赋值 啊,,对了,是不是我那个question.txt文件的放置位置不对,该放在那个文件夹啊

我是我最后的目击者 | 园豆:88 (初学一级) | 2017-11-25 11:44

@想和你一日三餐: 这个写法。。。。

你再看下这里
    if (gameInterface.radioButton1.Checked && gameInterface.isClick == 1)
                    answer = new SeqString("A".ToCharArray());
                else if (gameInterface.radioButton2.Checked && gameInterface.isClick == 1)
                    answer = new SeqString("B".ToCharArray());
                else if (gameInterface.radioButton3.Checked && gameInterface.isClick == 1)
                    answer = new SeqString("C".ToCharArray());
                else if (gameInterface.radioButton4.Checked && gameInterface.isClick == 1)
                    answer = new SeqString("D".ToCharArray());

如果4个判断都没进去后你answer就为null了

Daniel Cai | 园豆:10424 (专家六级) | 2017-11-25 11:59

@Daniel Cai: get,多谢,那个改正以后,点击不会显示东西,是因为txt文件的位置不对,没有读取到文字吗?(附带问一句,天王盖地虎,)

我是我最后的目击者 | 园豆:88 (初学一级) | 2017-11-25 12:09

@想和你一日三餐: 这个只能你自己去debug了,打个断点很容易就知道执行是否符合预期。

Daniel Cai | 园豆:10424 (专家六级) | 2017-11-25 12:16
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册