data structures using alternate name is given to known data type the general syntax of using the typedef keyword is given asprogramming tip does not allow declaration of variables at the time of creating typedef definition so variables must be declared in an independent statement typedef existing_data_type new_data_typenote that typedef statement does not occupy any memoryit simply defines new type for exampleif we write typedef int integerthen integer is the new name of data type int to declare variables using the new data type nameprecede the variable name with the data type name (newthereforeto define an integer variablewe may now write integer num= when we precede struct name with the typedef keywordthen the struct becomes new type it is used to make the construct shorter with more meaningful names for types already defined by or for types that you have declared for exampleconsider the following declarationtypedef struct student int r_nochar name[ ]char course[ ]float fees}now that you have preceded the structure' name with the typedef keywordstudent becomes new data type thereforenow you can straightaway declare the variables of this new data type as you declare the variables of type intfloatchardoubleetc to declare variable of structure studentyou may write student stud note that we have not written struct student stud initialization of structures structure can be initialized in the same way as other data types are initialized initializing structure means assigning some constants to the members of the structure when the user does not explicitly initialize the structurethen automatically does it for int and float membersthe values are initialized to zeroand char and string members are initialized to '\ by default the initializers are enclosed in braces and are separated by commas howevercare must be taken to ensure that the initializers match their corresponding types in the structure definition the general syntax to initialize structure variable is as followsor struct struct_name data_type member_name data_type member_name data_type member_name }struct_var {constant constant constant }struct struct_name data_type member_name data_type member_name data_type member_name }