almost forgot everything about C. Below are something I read these days piece by piece, not sure if they are all correct.
Prototyping
Sort of type declaration (or maybe description?) of functions in the top of the program
Procedure
In c, there is no procedures, this term could be referred to void type functions
Unoin
sort of mixed types entity. Allocate corresponding memory with the maximum size of the types in it. Can store one kind of value each time.
Struct
Class like data structure with out functions in it.