#include<stdio.h>
#include<stdlib.h>
#include<string.h>
typedef struct nod
{
int data;
struct nod *link;
}node;
node *head=NULL;
void push(int x)
{
node
*temp
=malloc(sizeof(node
)); if(temp
==NULL
) { printf("Stackoverflow!!\n"); exit(1); } temp->data=x;
temp->link=head;
head=temp;
}
int pop()
{ if (head
==NULL
) { printf("Stackunderflow!!\n"); exit(1); } node *temp;
temp=head;
head=head->link;
int popel=temp->data;
temp=NULL;
return popel;
}
int main(int argc,char*argv[])
{
FILE *mainfile;
mainfile
= fopen(argv
[1],"r"); if(mainfile == NULL)
{
printf("Failed opening file containing data \n"); return 0;
}
char pass[10];
while (fscanf(mainfile
,"%s",pass
)!=EOF
) {
}
int ans=1;
while(ans)
{
printf("Enter 1 to pop 0 to stop the operation\n"); if(ans)
printf("The data popped is : %d \n",pop
());
}
return 0;
}
I2luY2x1ZGU8c3RkaW8uaD4KI2luY2x1ZGU8c3RkbGliLmg+CiNpbmNsdWRlPHN0cmluZy5oPgp0eXBlZGVmIHN0cnVjdCBub2QKewogIGludCBkYXRhOwogIHN0cnVjdCBub2QgKmxpbms7Cn1ub2RlOwoKbm9kZSAqaGVhZD1OVUxMOwp2b2lkIHB1c2goaW50IHgpCnsgICAKICAgIG5vZGUgKnRlbXA9bWFsbG9jKHNpemVvZihub2RlKSk7CiAgICBpZih0ZW1wPT1OVUxMKSB7IHByaW50ZigiU3RhY2tvdmVyZmxvdyEhXG4iKTsgZXhpdCgxKTsgfQogICAgdGVtcC0+ZGF0YT14OwogICAgdGVtcC0+bGluaz1oZWFkOwogICAgaGVhZD10ZW1wOwogIAp9CmludCBwb3AoKQp7ICAgaWYgKGhlYWQ9PU5VTEwpIHsgcHJpbnRmKCJTdGFja3VuZGVyZmxvdyEhXG4iKTsgZXhpdCgxKTsgfQogICAgbm9kZSAqdGVtcDsKICAgIHRlbXA9aGVhZDsKICAgIGhlYWQ9aGVhZC0+bGluazsKICAgIGludCBwb3BlbD10ZW1wLT5kYXRhOwogICAgZnJlZSh0ZW1wKTsKICAgIHRlbXA9TlVMTDsKICAgIHJldHVybiBwb3BlbDsKfQppbnQgbWFpbihpbnQgYXJnYyxjaGFyKmFyZ3ZbXSkKewogICAgRklMRSAqbWFpbmZpbGU7CiAgICBtYWluZmlsZSA9IGZvcGVuKGFyZ3ZbMV0sInIiKTsKICAgIGlmKG1haW5maWxlID09IE5VTEwpCiAgICB7CiAgICAgICAgcHJpbnRmKCJGYWlsZWQgb3BlbmluZyBmaWxlIGNvbnRhaW5pbmcgIGRhdGEgXG4iKTsKICAgICAgICByZXR1cm4gMDsKICAgIH0KICAgIGNoYXIgcGFzc1sxMF07CiAgIHdoaWxlIChmc2NhbmYobWFpbmZpbGUsIiVzIixwYXNzKSE9RU9GKQogICAgIHsKICAgICAgICBwdXNoKGF0b2kocGFzcykpOwogICAgIH0KICAgICBpbnQgYW5zPTE7CiAgICB3aGlsZShhbnMpCiAgICB7ICAgCiAgICAgIHByaW50ZigiRW50ZXIgMSB0byBwb3AgMCB0byBzdG9wIHRoZSBvcGVyYXRpb25cbiIpOwogICAgICAgICBzY2FuZigiJWQiLCZhbnMpOwogICAgICAgICBpZihhbnMpCiAgICAgIHByaW50ZigiVGhlIGRhdGEgcG9wcGVkIGlzIDogJWQgXG4iLHBvcCgpKTsgICAgCiAgICAgCiAgICB9CiAgICByZXR1cm4gMDsKfQ==