#include<stdio.h>
#include<stdlib.h>
typedef struct t_name
{
char last_name[25];
char first_name[15];
char middle_init[2];
} NAME;
NAME my_name, your_name;
int main()
{
char temp[] = "sumit";
printf("Program started\n");
my_name.first_name=temp;
your_name = my_name;
NAME abc=my_name;
printf("my_name=%s\n",my_name.first_name);
printf("your_name=%s\n",your_name.first_name);
printf("abc=%s\n",abc.first_name);
}
But error occurs in following statement my_name.first_name=temp;
error: incompatible types when assigning to type ‘char[15]’ from type ‘char *’
define variable char *first_name
instead of
char first_name[15];
Try this
typedef struct t_name{
char *first_name;
char *middle_init;
char *last_name;
}NAME;
NAME my_name,your_name;
int main()
{
char temp[] = "sumit";
printf("Program started\n");
my_name.first_name=temp; // now you can assign value
your_name = my_name;
NAME abc=my_name;
printf("my_name=%s\n",my_name.first_name);
printf("your_name=%s\n",your_name.first_name);
printf("abc=%s\n",abc.first_name);
}