经典汇编语言教程:10.5 动态数据的编程

10.5 动态数据的编程

动态数据结构是一种常用的数据结构,在事先不知道所处理数据容量的情况,用动态数据是一种行之有效的方法,也为许多C语言程序员所采用。在汇编语言中,我们也可以采用动态数据的方式来存储数据,并进行链表的遍历。 

为了使读者尽快理解本例的功能,我们把与之相似功能的C语言程序书写如下:

#include <stdio.h>
#include <alloc.h>
struct  link {
int  data;

struct link  *next;

};

void main( )
{struct link *head=NULL, *temp, *pt;
 int i;

for (i = 20; i > 0; i--) { 

;生成20个结点的链表

temp = (struct link *)calloc(1,sizeof(struct link));

;申请一个结点的空间

if (temp == NULL) break; 

;若分配内存失败

temp->data = i;

temp->next = NULL;

if (head == NULL) head = temp;

else pt->next = temp;

pt = temp;

}

while (head != NULL) { 

 ;遍历结点并输出其数据字段
 printf("%d\n",head->data);

 pt = head;   head = head->next;   free(pt);

}

}

例10.13 编写一个程序用动态链表存储20,19,……,1,并用遍历链表的方法来显示每个结点的数值。

解:显示解答

上页:上一课 下页:下一课

经典汇编语言教程·相关目录

第1章 汇编语言的由来,数据类型第2章 CPU资源和存储器
第3章 操作数的寻址方式第4章 标识符和表达式
第5章 微机CPU的指令系统第6章 程序的基本结构
第7章 子程序和库第8章 输入输出和中断
第9章 宏第10章 应用程序设计
第11章 数值运算协处理器第12章 汇编语言和C语言
汇编语言重要附录Windows API函数大全
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号