结构体和指针本身就没有强制要求使用。可以的不用,关键看是否需要用。
结构体,你可以把它看成有多属性的类(不包含方法),遇到需要定义多个有关联性且类型不一的变量时就可以用结构体定义。比如,让你定义这个学生信息(包含名字,年龄,性别...)你说是单独定义一个个独立变量方便,还是用结构方便。不考虑阅读和编写代码的方便与否。光让你把这些信息作为参数传递,结构只要一个参数,独立变量你得写一排。
指针本身就是一种变量,用来储存地址值,当你需要遍历连续地址或者传递地址或者申请或释放内存地址等等,自然会想到用指针。
指针和结构还是一对好搭档,最常见的链表就是它们的完美组合。
当你意识到这样写的必要性,你自然会用,而不是为了用而用。C语言最大魅力就是给了编程人员最大的自由。