湖南大学 bump 实验 第六关
第一个板块就是对输入的数字进行判断,依次是从第一个数开始,对其后面的数字依次两两比较,前一个不等于后一个。
就是连个for循环,得出所有数均不可以相等。
这个板块就是对输入的数字,关联内存的另一个数的地址
依据num的数字的大小,决定
ebp -0x48 +num 的内存存储对应的addr
而addr 的选择关系有以下,而addr 对应内存存在一个值
Num : addr (addr)
1 0x804c0c4 1a7
2 0x804c0b8 0x6c
3 0x804c0ac 0x155
4 0x804c0a0 0x187
5 0x804c094 0x3bd
6 0x804c088 0x255
这个通过下面这个图可以查看的到
所以,对于这个数据
Num : addr (addr)
1 0x804c0c4 1a7
2 0x804c0b8 0x6c
3 0x804c0ac 0x155
4 0x804c0a0 0x187
5 0x804c094 0x3bd
6 0x804c088 0x255
要把num指向的数据从大到小排序,就是 5 6 1 4 3 2
调用readsix number 的过程
Read six number 调用 sccanf 函数