class Class1
{
private string str = "Class1.str";
static void StringConvert(string str1)
{
str1 = "string being converted.";
}
static void Main()
{
string str = "A string";
StringConvert(str);
Console.WriteLine(str); // 运行结果是:A string
}
}我在机器上运行了上面的代码,发现结果是A string,而不是我想象中的string being converted.不知道为什么?
我认为当执行过StringConvert方法后,局部变量str作为实际参数由原来的值A string就变成了string being converted.当输出时,自然就是string being converted.了。可是机器上显示的却是A string。不知道为啥?请帮我看一下,谢谢了!
{
private string str = "Class1.str";
static void StringConvert(string str1)
{
str1 = "string being converted.";
}
static void Main()
{
string str = "A string";
StringConvert(str);
Console.WriteLine(str); // 运行结果是:A string
}
}我在机器上运行了上面的代码,发现结果是A string,而不是我想象中的string being converted.不知道为什么?
我认为当执行过StringConvert方法后,局部变量str作为实际参数由原来的值A string就变成了string being converted.当输出时,自然就是string being converted.了。可是机器上显示的却是A string。不知道为啥?请帮我看一下,谢谢了!
解决方案 »
- ShowDialog的非消息框窗体这样做到底是关闭了还是隐藏了?
- 如果一个类的代码不多,也要独占一个cs文件吗?
- 在c/s结构中用过RichTextBox控件的字体颜色
- 求一个简单的C#程序代码
- 能不能获取一个Cache里的剩余过期时间??
- 请问如何让服务定时启动一个form
- InstallShield 怎么样才能生成一个exe,或者msi的文件呀?
- 字符串排序操作
- 我在2000 server上装了.net,但在建立新的web项目的时候,建立不成功,说c:/inetpub/wwwroot/test1和localhost/test1不匹配,我得IIS 80端
- BinaryWriter.Seek(0,SeekOrigin.End)为什么是将基础流的文
- 问个弱弱的问题..
- 如何让进度条与页面加载同步(C#)??
{
str1 = "string being converted.";
}
static void Main()
{
string str = "A string";
StringConvert(ref str);
Console.WriteLine(str); // 运行结果是:A string
}
楼主的程序两个解决方法,一同楼上的,二如下,明白一些:
class Class1
{
private string str = "Class1.str";
static string StringConvert(string str1)
{
str1 = "string being converted.";
return str1;
}
static void Main()
{
string str = "A string";
str = StringConvert(str);
Console.WriteLine(str);
}
}
str指向"A string"static void StringConvert(string str1)
{
str1 = "string being converted.";
}
这时str1先指向"A string",但是当重新赋值str1 = "string being converted."; 后,会另外分配一块地址,存放"string being converted",并且str1指向它..但str的指向并没有变,始终指向"A string"..