.net 用c#很简单的编程,高手帮我看看哪里错了

来源:百度知道 编辑:UC知道 时间:2024/05/24 07:09:29
<%@ Page Language="C#" %>
<%
string Str="hello word";
for(int i=Str.Length;i>=0;i--)
{
char c=Str[i-1];
Response.write(c);
}
%>

Str是字符串啊。。。。又不是字符数组
学习C#的话,你可以尽量向java靠拢,C++是比较底层的高级语言,和C#有很大区别

二楼的回答是不对的,substring返回的也是字符串不是数组
string类型能够转换成char[],有方法的

char [] arrStr = Str.ToCharArray();
char c=arrStr [i-1];

你的错误应该是数组越界错误,因为当i=0的时候取Str[-1]时因为数组索引小于0,所以会出错。
建议做法:
string Str="hello word";
for(int i=Str.Length-1;i>=0;i--)
{
char c=Str[i];
Response.write(c);
}

索引超出了数组界限。

建议改为这样

<%@ Page Language="C#" %>
<%
string Str = "hello word"
for(int i=0;i<Str.Length;i++)
{
char c = Str[i];
Response.write(c);
}
%>

你的字符串又没有在数组里面,你在for里面怎么可以用数组呢,用Substring()也可以的,至于用法你自己去网上找找吧

char c=Str.SubString(i-1,1);

i=0时,Str[i-1]越界