a implementasinya dibagi 2 file: StackTypes.h dan StackImplementation.c. File StackTypes.h mendefinisikan tipe data Stack dan ItemType yang dipakai oleh StackImplementation.c. Dua file ini, beserta dengan StackInterface.h membentuk suatu paket ADT Stack yang siap dipakai.
/* Nama File: "StackTypes.h" -> representasi Sekuensial */
#define MAXSTACKSIZE 100
typedef <masukkan tipe data di sini: char, float, dll.> ItemType;
typedef struct
{
int Count;
ItemType Items[MAXSTACKSIZE];
} Stack;
/* Nama File: "StackImplementation.c" -> representasi Sekuensial */
#include<stdio.h>
#include<stdlib.h>
#include"StackInterface.h"
void InitializeStack(Stack *S)
{
S->Count=0;
}
int Empty(Stack *S)
{
return(S->Count==0);
}
int Full(Stack *S)
{
return(S->Count==MAXSTACKSIZE);
}
void Push(ItemType X, Stack *S)
{
if(S->Count==MAXSTACKSIZE)
{
printf("Maaf, anda mencoba menambah item ke Stack yang penuh!\n");
}
else
{
S->Items[S->Count]=X;
++(S->Count);
}
}
void Pop(Stack *S, ItemType *X)
{
if(S->Count==0)
{
printf("Maaf, anda mencoba mengambil item dari Stack yang kosong!\n");
}
else
{
--(S->Count);
*X=S->Items[S->Count];
)
}