4

我有一个缓冲区,其中包含一些 lldb 输出,其中包含很多地址范围,例如[0x00007fff60489000-0x00007fff604c0000).

给定一个地址(也是十六进制),我将如何搜索包含该地址的范围?我认为这将需要一些自定义的 elisp 代码。

4

1 回答 1

0

你可以用calc这个。十六进制的语法略有不同,我不会展示如何转换它们,但你的功能的核心可以写成如下。

(require 'calc)

(defun is-between (n low high)
  (and (equal "1" (calc-eval (concat n " - " low " > 0")))
       (equal "1" (calc-eval (concat high " - " n " > 0")))))

(is-between "16#f0" "16#f" "16#ff")
于 2016-01-26T00:28:17.287 回答