【发布时间】:2018-04-18 01:22:38
【问题描述】:
早上好,
我正在尝试创建一个链表,其中每个节点都必须包含一个字符。所以首先老师给了我们一个代码。 这段代码创建了一个链表,我们可以在其中放置数字。然后我们必须更改代码以按大小顺序输出数字(0 到 99999)。这很容易做到。例如我可以输入:
"3 5 4 2 1" 我的列表将包含:
[3|adr_nxt] [5|adr_nxt] [4|adr_nxt] [2|adr_nxt] [1|adr_nxt]
然后会输出:12345
下一步是用字符替换数字。
例如我输入:"hdbcu",列表将分别包含每个字符:
[h|adr_nxt] [d|adr_nxt] [b|adr_nxt] [c|adr_nxt] [u|adr_nxt]
那么它应该输出:bcdhu
所以我所做的就是按照老师的建议将列表中值的大小从 2 个字节更改为 1。
我的问题是,如果我让它 2 个字节并执行 CHARI mVal,x,它就可以工作
但如果我这样做(只放 1 个字节后)
CHARI letter,d
LDA 0,i
LDBYTEA letter,d
STA mVal,x
然后它不再起作用并给我垃圾值(也弄乱了我的指针)
[00|wrong_adress] for every node
这是我的代码:https://pastebin.com/yyHRB89V 它很长,所以我把它放在了一个粘贴箱里。
tl;dr:我必须将字符放入链表中,然后按字母顺序对它们进行排序。我不能把它们放在链表中。
【问题讨论】: