私は、コマンドプロンプトから入力を受け取るリンクリストのきれいなプリンタを持っています。 例えば、GDBのきれいなプリンタを使ってリンクされたリストをトラバースする
私のコードは以下のようなものであるXYZ印刷:期待どおりに作業を行い
class Randomcalss:
def __init__(self, val):
self.val = int(val)
def to_string(self):
return "printing linked list:"
def children(self):
for field in self.val.type.fields():
key = field.name
val = self.val[key]
yield key,val.dereference()
、および印刷物:
printing linked list:= {head = {next = 0x625590, prev = 0x623c70}}
しかし、私はリンクリストを横断し、続行したい場合さらに私は何をしますか。 私はhead ['next']にアクセスしようとするたびにheadは文字列で、stringインデックスは整数でなければならないと言います。
私はself.val [key]のように頭の次のノードにもアクセスしますか?
C++では、この 'p head-> next'のようなことができます。 –
返信いただきありがとうございますが、GDBのきれいなプリンタでリンクリストをトラバースする方法が必要でした。 – Sharath
コマンド 'set print pretty on'を使うことができます。その後、' print'や 'p'を使って何がwintであっても、かなりの形式になります。 –