阅读量:0
在C语言中,可以使用结构体和指针来创建线性表。下面是一个简单的示例代码:
#include <stdio.h> #include <stdlib.h> // 定义线性表的结构体 typedef struct { int* data; // 数据存储区 int length; // 线性表长度 } List; // 创建线性表 List* createList(int length) { // 分配内存空间 List* list = (List*) malloc(sizeof(List)); if (list == NULL) { printf("内存分配失败\n"); return NULL; } // 分配数据存储区的空间 list->data = (int*) malloc(length * sizeof(int)); if (list->data == NULL) { printf("内存分配失败\n"); free(list); // 释放之前分配的内存 return NULL; } // 初始化线性表长度 list->length = length; return list; } int main() { int length; printf("请输入线性表的长度:"); scanf("%d", &length); // 创建线性表 List* list = createList(length); if (list == NULL) { return 0; } printf("线性表创建成功,长度为%d\n", list->length); // 释放内存 free(list->data); free(list); return 0; }
在上述代码中,使用了一个结构体List
来表示线性表,其中包含一个整型指针data
用于存储数据,以及一个整型变量length
表示线性表的长度。createList
函数用于创建线性表,并通过动态内存分配来为数据存储区分配空间。最后,通过在main
函数中调用createList
函数来创建线性表,并在创建成功后输出线性表的长度。最后,需要手动释放分配的内存空间。