> For the complete documentation index, see [llms.txt](https://chainide.gitbook.io/chainide-chinese/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://chainide.gitbook.io/chainide-chinese/4.-chainide-quan-ti-bu-ju/4.7.-cha-jian-xi-tong-mo-kuai/2.7.1-chainide-debugger.md).

# 2.7.1 ChainIDE Debugger

{% embed url="<https://www.youtube.com/watch?v=GTq2ltR2rSM>" %}

ChainIDE Debugger在输入交易hash后会显示合约的状态。

它可以在ChainIDE上创建的交易，也可以通过提供交易的地址来使用。后者的前提是你有合约的源代码，或者你已经输入了经过验证的合约地址。

以下方法可以启动一个调试会话。

1. 当一个成功或失败的交易出现在终端中时，点击调试按钮。调试器将被激活，并在侧面板中获得焦点。
2. 在插件管理器中激活调试器，然后点击图标面板中的错误。要开始调试会话，输入一个已部署的事务的地址--同时在编辑器中有源代码，然后点击开始调试按钮。

## Debugger面板

#### Function Stack

函数栈列出了transaction正在与之交互的函数。

![](/files/Z8IqOCGPpFPGVK5LB8gP)

#### Solidity Locals

Solidity Locals 是展示一个函数内的局部变量。

![](/files/oRzLW8VnnKFZYu840zNS)

#### Solidity State

这些是合约的状态变量。

![](/files/M7pVlHdcnblRz3Lcjgze)

#### Opcodes

这个面板显示了调试器目前所处的步骤号和操作码。

![](/files/lNQ1GMP21OLofpQOkQlG)

#### Step details

步骤详情显示了关于操作码步骤的更多信息。

![](/files/xgCi1h7h6uLRQQHvAzZy)

#### Stack

该面板显示EVM堆栈。

![](/files/1FRE3s9BbKztoEbeWKby)

#### Memory

每一个新的信息调用都会清空内存。内存是线性的，可以在字节级寻址。读取的宽度被限制在256位，而写入的宽度可以是8位或256位。

内存面板由3列组成。你可能需要让Remix的侧边面板宽一点，以使格式正确。(将主面板和侧板之间的边界拖到右边）。

第1列是内存中的位置。第二列是十六进制的编码值。第3列是解码后的值。如果什么都没有，那么问号(?)将显示--像这样。

![](/files/fW9uofyG9pK4mxM1oOXl)

#### Storage

该面板持久性存储。

#### Call Stack

所有的计算都是在一个叫做调用堆栈的数据阵列上进行的。它的最大尺寸为1024个元素，包含256位的字。

![](/files/y61t1n2ZioSJ203ZgEi1)

#### Call Data

调用数据包含函数参数。

![](/files/wU8uOSyn62AqCYf3vzgD)

#### Return Value

指的是函数将返回的值。

![](/files/Xx6SJvPd7Yjd65HhlR08)

#### Full Storage Changes

这显示了函数结束时的持久化存储。

![](/files/6fib5VQorwcQ1gThdVhJ)

## Debugger断点功能

![](/files/DgGyK0YPGko18qD4mePB)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://chainide.gitbook.io/chainide-chinese/4.-chainide-quan-ti-bu-ju/4.7.-cha-jian-xi-tong-mo-kuai/2.7.1-chainide-debugger.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
