dc的各种实现之间有什么区别?
dc
是 Unix 标准桌面计算器。 AFAIK,有不同的实现(例如 Solaris 或 GNU)。
这些实现之间的确切区别是什么?您可以确定 dc 实现具有的最小操作子集是什么?
dc
is the Unix standard desktop calculator. AFAIK, there are different implementations (like Solaris or GNU for instance).
What is the exact difference between these implementations and what is the minimal subset of operations you can be sure a dc
implementation has?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
据我所知,至少 FreeBSD 也曾经使用过 GNU-Implementation,1 但不再这样做了。 Solaris 似乎有不同的实现。2 从我第一次阅读时,我提到了这些事情:
Solaris dc 缺少这些命令
|
、a
、~ ,
n
,Solaris 缺少命令
!=
、!>
和!<
。这很重要,因为它改变了 shell 命令的计算方式。在 GNU dc 中,序列!>...
正在应用比较,但在 Solaris 中,这会将行的其余部分作为 shell 命令执行。Solaris 不支持
#
注释。在 Solaris 中,
Y
打印附加调试信息。Solaris 不接受任何命令行参数。
GNU dc 接受最多 16 个基数的输入,Solaris 似乎没有限制(unshure)。
As far as I could find, at least FreeBSD used to use the GNU-Implementation as well,1 but doesn't do so anymore. Solaris seems to have a different Implementation.2 From my first read, I mentiones these things:
Solaris dc lacks these commands
|
,a
,~
,n
,Solaris lacks the commands
!=
,!>
and!<
. This is important, because it changes the way shell commands are evaluated. In GNU dc, the sequence!>...
is applying the comparison, but in Solaris this would execute the rest of the line as a shell command.Solaris lacks support of
#
comments.In Solaris,
Y
prints additional debuging information.Solaris does not accept any command-line arguments.
GNU dc accepts input radices up to 16, Solaris seems to be unlimited (unshure).