C語言中,調用成員變量用點還是用箭頭,取決於當前的ID是指針還是結構體本身。
如:
typedef struct { float height; float weight; } Person; int main(int argc, char *argv[]) { Person jiushen; Person *lengleng = (Person *)malloc(sizeof(Person)); //注意這裏結構體指針的聲明,要分配空間 jiushen.weight = 60; jiushen.height = 175; lengleng -> height = 165; (*lengleng).weight = 50; printf("%f, %f\n", jiushen.weight, lengleng->weight); }
可以看出,對於指針lengleng,
lengleng -> weight
等價於
(*lengleng).weight