Trees, stacks, vectors, lists, etc. are called data structures because they provide you a way to hold, sort, and manipulate multiple objects of one type. A strct itself is not really a data structure, as it implements grouping different data types together to represent a single unit.
For example, a struct can represent a box which has a height, width, and depth, the material it is made of, and maybe a list of what it contains. A data strcture of boxes could be used to represent a warehouse. The data structure contains information about where to find a certain box, how to organize your boxes, where new boxes go, etc. The struct itself contains the definition of a box - what it means to be a box.
That said, you could make a struct to implement a data structure. For example, trees, can use structs to represent the nodes - each struct has some data, a pointer to the left child, and a pointer to the right child. A linked list could use structs - each struct has some data and a pointer to the next node.