换成str[currenpos]=System.Convert.ToChar(test.SubString(currenpos-1,1)); 
或者str[currenpos]=System.Convert.ToChar(test.SubString(currenpos,1));不知是哪个,我没有测试,你自己试试。

解决方案 »

  1.   

    for(i=0;i <=test.Length;i++) 
        { 
        if(i>=maxlength)//防止栈溢出 
          break; 
        try 
        { 
          str[i]=test[i]; //为什么这句只能输入一个字符,如何才能输入多个字符 
        } 
        catch(System.FormatException) 
        { 
          Console.WriteLine("FormatException is Invalid"); 
        } 
        } 
      

  2.   

     for(int a=0;a <=str.Length;a++) 
        { 
           Console.Write(str[i]);  
        } 
      

  3.   

    for(int a=str.Length - 1;a >= 0;a--) 
        { 
          Console.Write(str[a]);  
        } 
      

  4.   

    会出现异常IndexOutOfRangeException
      

  5.   

    str[currenpos]=System.Convert.ToChar(test); //为什么这句只能输入一个字符,如何才能输入多个字符 
     改成str[currenpos]=test[i];
        Console.Write("输入字符串的反序是:"); 
        for(int a=0;a <=test.Length;a++) 
    改成:
    for(int a=0;a <test.Length;a++)
      

  6.   

    str[currenpos]是单个字符数组元素
    System.Convert.ToChar(test) 这个操作是将test字符串转换成字符数组
    问题:类型不匹配解决:
    或是将字符串按先后顺序分割
    str[currenpos]=System.Convert.ToChar(test.SubString(currenpos-1,1));每次提出一个字符或是将tochar()的返回结果赋值给数组(注意类型)
    str = System.Convert.ToChar(test);