码迷,mamicode.com
首页 > 编程语言 > 详细

使用函数累加数组内数值的和

时间:2015-09-11 11:58:48      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:

文件名: test11.sh 

#!/bin/bash
# adding values in an array

function addarray {
  local sum=0
  local newarray
  newarray=("$@")
  for value in ${newarray[*]}
  do
    sum=$[ $sum+$value ]
  done
  echo $sum
}
myarray=(1 2 3 4 5)
echo "The original array is : ${myarray[*]}"
argl="${myarray[*]}"
result="addarray $argl"
echo "The result is $result"

运行后输出的结果为:

The original array is : 1 2 3 4 5
The result is addarray 1 2 3 4 5

并没有得到想要的和,错误还不清楚

 

错误找到了: result="addarray $argl" 中的 addarray $argl 左右两边的是`符号,就是左上角~的那个键,书上看的以为是单引号,一想怎么可能是单引号,单引号会把里面的字符都看作是字符串,可是用了双引号也是没有结果,后来看到别的书上的脚本,发现引用函数时,外面的符号是`,改了后结果就能长长输出

输出结果:

The original array is : 1 2 3 4 5
The result is 15

 

使用函数累加数组内数值的和

标签:

原文地址:http://www.cnblogs.com/jacson/p/4800227.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!