2024-08-28 19:00:25 +07:00
|
|
|
/*
|
|
|
|
* Win (Thanawin Pattanaphol)
|
|
|
|
* vendorInfo.c
|
|
|
|
* 8th August 2024
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <stdlib.h>
|
|
|
|
|
|
|
|
#define MAX_VENDORS 20
|
|
|
|
#define MAX_FILENAME_LENGTH 4096
|
|
|
|
|
|
|
|
int read_input(char str[], int n);
|
|
|
|
|
2024-08-29 10:57:19 +07:00
|
|
|
struct vendor_item
|
|
|
|
{
|
2024-08-28 19:00:25 +07:00
|
|
|
char vendor_name[20];
|
|
|
|
char merchandise[15];
|
|
|
|
int inventory_count;
|
|
|
|
int item_price_baht;
|
|
|
|
} vendors[MAX_VENDORS];
|
|
|
|
|
2024-08-29 10:57:19 +07:00
|
|
|
int main()
|
|
|
|
{
|
2024-08-28 19:00:25 +07:00
|
|
|
char file_name[MAX_FILENAME_LENGTH];
|
|
|
|
read_input(file_name, MAX_FILENAME_LENGTH);
|
|
|
|
|
|
|
|
FILE *fp;
|
2024-08-29 10:57:19 +07:00
|
|
|
if ((fp = fopen(file_name, "r")) == NULL)
|
|
|
|
{
|
2024-08-28 19:00:25 +07:00
|
|
|
printf("%s cannot be opened.\n", file_name);
|
|
|
|
exit(EXIT_FAILURE);
|
|
|
|
}
|
|
|
|
|
2024-08-29 10:57:19 +07:00
|
|
|
// calculate file size
|
|
|
|
fseek(fp, 0, SEEK_END);
|
|
|
|
unsigned long file_size = ftell(fp);
|
|
|
|
fseek(fp, 0, SEEK_SET);
|
|
|
|
|
|
|
|
char *file_buffer = (char *) malloc(file_size);
|
|
|
|
fread(file_buffer, file_size, 1, fp);
|
|
|
|
|
|
|
|
printf("%s", file_buffer);
|
2024-08-28 19:00:25 +07:00
|
|
|
|
|
|
|
fclose(fp);
|
2024-08-29 10:57:19 +07:00
|
|
|
free(file_buffer);
|
2024-08-28 19:00:25 +07:00
|
|
|
return 0;
|
|
|
|
};
|
|
|
|
|
2024-08-29 10:57:19 +07:00
|
|
|
int read_input(char str[], int n)
|
|
|
|
{
|
2024-08-28 19:00:25 +07:00
|
|
|
int ch, i = 0;
|
|
|
|
|
2024-08-29 10:57:19 +07:00
|
|
|
while ((ch = getchar()) != '\n')
|
|
|
|
{
|
|
|
|
if (i < n)
|
|
|
|
{
|
2024-08-28 19:00:25 +07:00
|
|
|
str[i++] = ch;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
str[i] = '\0';
|
|
|
|
return i;
|
|
|
|
}
|