Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define _CRT_SECURE_NO_WARNINGS
- #include <stdlib.h>
- #include<stdio.h>
- typedef enum Gender {
- Female = 0,
- Male = 1,
- } Gender;
- typedef struct data_human {
- char *name;
- unsigned char age;
- Gender gender;
- } d_human;
- typedef struct h_human
- {
- d_human personal_data;
- d_human* partner;
- }h_human;
- int main(int argc, char** argv)
- {
- /* t_Human woman = { "Maria", 18, Female };
- t_Human man = { "Georgi", 55, Male };
- man.partner = &woman;
- printf("Woman: %s %d %d", man.partner->name, man.partner->age, man.partner->gender);*/
- int i;
- FILE* fdata = fopen("data.txt", "r");
- h_human record = { 0 };
- record.personal_data.name = (char*)malloc(sizeof(char) * 30);
- if ((fdata = fopen("data.txt", "r")) == NULL)
- {
- printf("Error opening file");
- exit(1);
- }
- while (fscanf(fdata, "%s | %d | %d\n", record.personal_data.name, &record.personal_data.age, &record.personal_data.gender) != EOF)
- {
- printf("Information about the citizen:\n");
- // fscanf(fdata, "%s | %d | %d\n", record.personal_data.name, &record.personal_data.age, &record.personal_data.gender);
- printf("%s\t%d\t%d\n", record.personal_data.name, record.personal_data.age, record.personal_data.gender);
- }
- fclose(fdata);
- free(record.personal_data.name);
- if ((fdata = fopen("male.bin", "wb")) == NULL)
- {
- printf("Error opening file");
- exit(2);
- }
- else
- {
- fdata = fopen("male.bin", "wb");
- for (i = 0; i < 4; i++)
- {
- //....... if (fscanf("%d", &record.personal_data.gender) == .......)
- {
- if (fwrite(&record.personal_data.gender, sizeof(h_human), 1, fdata) == 1)
- printf("Male: %s",record.personal_data.name);
- }
- }
- }
- fclose(fdata);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement