在cshell 中如何给一个数组追加元素? 或者说c shell 中咋样定义一个动态长度的数组?

在cshell 中如何给一个数组追加元素? 或者说c shell 中咋样定义一个动态长度的数组?,第1张

It looks pretty straight forward. For example:

set name=(a b c) # name = (a b c)

set name = ($name d) # name = (a b c d)

set name = (d $name) # name = (d a b c)

set name = ($name[1-2] d $name[3-]) # name = (a b d c)

你那样定义后,不能直接使用,因为未对当前数组变量进行实例化,也就没有进行内存分配这里给你推荐两种方法。1、初始化时设置他的数组大小string[] myarr = new string[2]myarr[0] = "1"myarr[1]="第二个值"2、初始化时设置他的数组大此拆伏小并赋值string[] myarr = new string[]{"1","2"森携}3、可以动御早态改变数组大小的数组List<string>listArr = new List<string>()listArr.add("添加的值")listArr.add("再添加一个值")listArr.add("OK")listArr.RemoveAt(1)//删除索引1的项....//该方法 *** 作数组更加灵活。如果不需要动态 *** 作数组的话,可以不使用该方法。string[] myarr = listArr.ToArray()//将List类型转成string[]类型的数组

shell中数组的定义是使用 小括号来表示的,其中数组元素之间用空格作为分隔,比如:

a. 访问特定的数组元素,比如访问第2个元素,那么利用下标index=1进行访问: index支持负值,表示从后向前访问, 第一个元素的index =0, 如果从后向前,那么最后一个元素index 可以表示为index=-1.

b. 访问所有的数组元素,这时候index 用* 表示就可以了;如下:

c. 获取数组元素的个数:

在上槐明述获取所有元素的前面加上一个# 就可以了,如下:

a. 根据index 进行拿巧修改:

b. 追加元素到数组中:

当数组名称中含有shell变量的时候,此时随着shell变量的变化,那么引用的数组自然也就不同;此时可以通过如下的方式实现 变量的嵌套:

嵌套变量有两个$符号,铅敏告一个用来组合成完整的变量名称,另一个用于 标记组合后的内容是一个变量,而后一个$符号需要用 单引号括起来,剩余的部分需要用双引号括起来;然后用echo 来显示这个变量,但因为 单引号 引用的字符不会被shell解释,所以输出结果是单引号,此时用eval 来调用echo 语句就可以实现解析了;具体实例如下:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11978304.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存