HH123_3 2022-04-24 14:13 采纳率: 86.8%
浏览 43
已结题

bash shell学习过程中的疑问:变量类型都是字符串么?

echo $? 将返回值输出到屏幕上,这个$?是一个0-255的整数呢?还是一个'0'-'255'的字符串呢?
我认为是一个'0'-'255'的字符串,但是可以被解读成0-255的整数在它需要为整数的时候, 不知理解的对不对?

  • 写回答

1条回答 默认 最新

  • 我叫她狗子 2022-04-24 14:56
    关注

    变量类型是数字,你可以做以下这样的一个测试:
    写一个测试脚本,指定return的返回值,无论是执行函数,还是将函数赋值给变量,执行完脚本后,$?表示返回的数值信息,0表示没有错误(而非显示最后命令的退出状态,并没有错误信息,但返回的不是0,函数运算过后的数值)
    当将返回的return信息改为字符串时,则会出现报错,return需要数字参数(说明shell函数中使用return时只能返回数字),$?返回的数值信息为非0

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 5月3日
  • 已采纳回答 4月25日
  • 创建了问题 4月24日

悬赏问题

  • ¥30 matlab解优化问题代码
  • ¥15 写论文,需要数据支撑
  • ¥15 identifier of an instance of 类 was altered from xx to xx错误
  • ¥100 反编译微信小游戏求指导
  • ¥15 docker模式webrtc-streamer 无法播放公网rtsp
  • ¥15 学不会递归,理解不了汉诺塔参数变化
  • ¥15 基于图神经网络的COVID-19药物筛选研究
  • ¥30 软件自定义无线电该怎样使用
  • ¥15 R语言mediation包做中介分析,直接效应和间接效应都很小,为什么?
  • ¥15 Jenkins+k8s部署slave节点offline