0

..然后到一个数组,或者沿着那些线。我很困惑我应该做什么。

以下是结构:

typedef struct {
  char name[30];
} PersonType;

typedef struct {
  PersonType *personInfo;
} StudentType;

typedef struct {
  StudentType students[30];
} GraduateType;

我想获取 PersonType 的名称。像这样,在 main() 中:

GraduateType *gptr = (GraduateType *) calloc(3, sizeof(GraduateType));
// Assume here that info has been scanf()'d
int i, j;
for(i = 0; i < 3; i++) {
  for(j = 0; j < 2; j++) {
    if(strcmp(gptr[i].students[j].personInfo.name, "asd")) { // <- This
      // blah
    }
  }
}

如何?

4

1 回答 1

1

你快到了。personInfo是一个指针,所以你应该这样对待它:

gptr[i].students[j].personInfo->name
于 2012-10-20T20:53:38.337 回答