main.c

来自「数据结构自己写的linux链表的实现」· C语言 代码 · 共 62 行

C
62
字号
#include "main.h"#include <stdio.h>#include <malloc.h>#include <stdlib.h>#define entry(type, member, ptr) \	(type *)((int)(ptr) - (int)(&(((type *)0)->member)))int cond(Node *node, int b){	Data *da;	da = entry(Data, datanode, node);	int a;	if(da->d == b)		a = 1;	else		a = 0;	return a;}void printdata(Node *node){	Data *da;	da = entry(Data, datanode, node);	printf("%d\n",da->d);	}void deldata(Node *node){	Data *da;	da = entry(Data, datanode, node);	free(da);}int main(int argc, char** argv){	List *l;	Slist *sl;	int i;	int b;	l = createlist();	sl = createslist();	for(i=0;i<5;i++)	{		Data *data;		data = malloc(sizeof(Data));		scanf("%d",&(data->d));		addnode(l,&(data->datanode));	}	printf("-----------------\n");	printf("the search condition you want:");	scanf("%d",&b);	sl = searchnode(l, cond, b);	printsnode(sl, printdata);	printf("--------search data--------\n");	printf("the del condition you want:");	scanf("%d",&b);	delnode(l, cond, deldata, b);	printnode(l,printdata);	printf("-----------------\n");	   	return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?