| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4461 人关注过本帖
标题:[求助]如何定义一个constant的可用全局常量
取消只看楼主 加入收藏
jingzhao22visa
Rank: 1
等 级:新手上路
威 望:1
帖 子:343
专家分:0
注 册:2006-8-10
收藏
得分:0 
就是要用空格填充即可.
我声明了char[16]的数组.

假如我要弄一个字符串进去,除了string可以直接赋值以外,我不知道除了for循环还有什么方法可以给char[16]直接赋值.如果该问题可以解决,就不用Array.copy

现在我用string s="asdf",使用 padleft函数填充为16位的长度.然后想使用copy函数copyintochar[16]


2006-08-23 09:55
jingzhao22visa
Rank: 1
等 级:新手上路
威 望:1
帖 子:343
专家分:0
注 册:2006-8-10
收藏
得分:0 
谢谢各位了,我试一下.

thankyou very much.

2006-08-23 10:06
jingzhao22visa
Rank: 1
等 级:新手上路
威 望:1
帖 子:343
专家分:0
注 册:2006-8-10
收藏
得分:0 
string strSource = "changed";
strSource=strSource.PadLeft(16);
Console.WriteLine(strSource+strSource.Length);
char[] temp=new char[16];
strSource.CopyTo(0, temp, 0, strSource.Length);
Console.WriteLine(temp);
Console.WriteLine(temp.Length);

输出是:

changed16
changed
16

呵呵,谢谢了.

另外:
字符串输出直接:
Console.writeline(nameof char[]);
使用 Console.writeline(nameof char[].toString());
似乎只能输出其类型而已.


2006-08-23 10:29
jingzhao22visa
Rank: 1
等 级:新手上路
威 望:1
帖 子:343
专家分:0
注 册:2006-8-10
收藏
得分:0 
string strSource = "changed";
strSource=strSource.PadLeft(16);
Console.WriteLine(strSource+strSource.Length);
char[] temp1=new char[16];
strSource.CopyTo(0, temp1, 0, strSource.Length);
Console.WriteLine(temp1);
Console.WriteLine(temp1.Length);
char[] temp2 = new char[16];
temp2=strSource.ToCharArray(0,16);
Console.WriteLine(temp2);

使用 tochararray也可以.

2006-08-23 10:32
jingzhao22visa
Rank: 1
等 级:新手上路
威 望:1
帖 子:343
专家分:0
注 册:2006-8-10
收藏
得分:0 
输出字符串数组的时候只需要将字符串数组名称当作参数传入writeline()函数中就可以。

char[] temp=new char[16];
Console.Writeline(temp);

2006-08-23 10:36
jingzhao22visa
Rank: 1
等 级:新手上路
威 望:1
帖 子:343
专家分:0
注 册:2006-8-10
收藏
得分:0 
我試了 直接array.copy就可以了 都不用轉
-----------------




方便的话,把你用array。copy的代码贴出来我看看吧。
我还是没有办法直接使用array。copy

谢谢。
一直出错。
简单的小例子就可以了。
直接将string copy into char的那种


2006-08-23 10:42
jingzhao22visa
Rank: 1
等 级:新手上路
威 望:1
帖 子:343
专家分:0
注 册:2006-8-10
收藏
得分:0 
那是說array copy array。。。。。。。。。。。。没看懂。

你是说你试过 Array myIntArray=Array.CreateInstance( typeof(System.Int32), 5 );
Array myObjArray = Array.CreateInstance( typeof(System.Object), 5 );
在这样子定义的两个Array数组之间转换吗?



我是想转换
string s;
char[] temp;
这个样子的例子有吗?
使用Array.copy(s,temp,s.length);


2006-08-23 11:05
jingzhao22visa
Rank: 1
等 级:新手上路
威 望:1
帖 子:343
专家分:0
注 册:2006-8-10
收藏
得分:0 
str.PadLeft(16,' ').ToCharArray().CopyTo(c,0);
这样子使用string类的函数可以运用,
我现在是想看看能不能使用 Array.copy(s,temp,s.length);
这种方法。
但是一直无法成功。
类型之间无法转换。
不知如何解决。



2006-08-23 11:08
jingzhao22visa
Rank: 1
等 级:新手上路
威 望:1
帖 子:343
专家分:0
注 册:2006-8-10
收藏
得分:0 
是可以使用string.copyto函数。

呵呵,新接触C#,想多知道一些方法。
而且一开始想用Array。copy觉得语句比较简单,方便使用。
后来发现好像例子上全是用 Array myIntArray=Array.CreateInstance( typeof(System.Int32), 5 );
初始化数组的,然后直接声明数组就不好用。
想看看到底是怎么回事。如果能用当然最好了。
以后要是有需要用这个呢?
而且,这样Array myIntArray=Array.CreateInstance( typeof(System.Int32), 5 );声明一个数组似乎比较麻烦。
以后要是这样使用比较郁闷得说。。。

2006-08-23 11:15
jingzhao22visa
Rank: 1
等 级:新手上路
威 望:1
帖 子:343
专家分:0
注 册:2006-8-10
收藏
得分:0 
string[] strSource=new string[2];
strSource[0]= "chanqwer";

strSource[0] = strSource[0].PadLeft(16);
char[] temp = new char[16];
Console.WriteLine(strSource[0]);

Console.WriteLine(strSource[0].Length);
Array.Copy(strSource, temp, 16);
Console.WriteLine(temp);

上面的代码编译通过无错,运行的时候报错如下:
源数组长度不足。请检查 srcIndex 和长度以及数组的下限




[此贴子已经被作者于2006-8-23 11:39:13编辑过]


2006-08-23 11:30
快速回复:[求助]如何定义一个constant的可用全局常量
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024829 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved