HH123_3 2023-05-08 14:20 采纳率: 86.8%
浏览 27
已结题

shell问题:shell使用的是动态作用域规则还是静态作用域规则(即词法作用域规则)?

shell问题:shell使用的是动态作用域规则还是静态作用域规则(即词法作用域规则)?

问Chatgpt一会说静态一会说动态。
根据我下面写的这段代码和结果来看,应该是使用的动态作用域规则。
输出结果为10,如果是静态作用域规则,应该是11。

a=11
function f2(){
        echo "call function f2"
        echo "a : " $a
}
function f1() {
        echo "call function f1";
        local a=10
        f2
}
f1
  • 写回答

2条回答 默认 最新

  • 创意程序员 2023-05-08 15:01
    关注

    以实际为准,运行程序就知道结果了,就是静态作用域规则。
    ChatGPT一会说静态一会说动态,估计是被你问得怀疑它自己了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月16日
  • 已采纳回答 5月8日
  • 修改了问题 5月8日
  • 创建了问题 5月8日

悬赏问题

  • ¥20 有偿,学生成绩信息管理系统
  • ¥15 Arduino电机和openmv连接异常
  • ¥15 Arcgis河网分级报错
  • ¥200 java+appium2.1+idea
  • ¥20 请帮我做一个EXE的去重TXT文本
  • ¥15 工价表引用工艺路线,应如何制作py和xml文件
  • ¥15 根据历史数据,推荐问题类型
  • ¥15 需要仿真图,简单的二阶系统实例
  • ¥15 stm32光控照明仿真
  • ¥15 使用人工智能的方法生成满足一定统计参数要求的随机数序列