zoukankan      html  css  js  c++  java
  • 使用函数累加数组内数值的和

    文件名: 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
  • 相关阅读:
    画笔
    进程和线程<二>
    进程和线程<一>
    文件<2>
    文件<1>
    窗口(3)
    窗口<二>
    窗口(1)
    消息
    位图
  • 原文地址:https://www.cnblogs.com/jacson/p/4800227.html
Copyright © 2011-2022 走看看