Как я могу получить доступ к элементам связанного списка, который находится внутри другой структуры?

#c #list #pointers #struct #linked-list

#c #Список #указатели #структура #связанный список

Вопрос:

Я хочу подсчитать количество элементов, присутствующих внутри связанного списка DriverProfile. И я хочу сделать это, получив доступ к связанному списку через struct ParkingLot .

 //Declaring the linked list
struct DriverProfile{
    char name[20];
    int license_plate;
    struct DriverProfile *next_profile;
};
// Declaring the structure for parking lot containing the DriverProfile list identified by the *profiles pointer which is the pointer to the first element of the DriverProfile linked list

struct ParkingLot{
    struct DriverProfile *profiles ;
    int lotSize;
};
 

Комментарии:

1. parking_lot_pointer->profiles->name и получить следующий элемент: parking_lot_pointer = parking_lot_pointer->next_profile

2. Если это не то, о чем вы спрашиваете, пожалуйста, более конкретно объясните, с каким именно аспектом «доступа к элементам» у вас возникли проблемы.

3. Вместо этого рассмотрите возможность увеличения и уменьшения arraySize при добавлении и удалении драйверов на стоянке. Вероятно, это необходимо для проверки на lotSize . numDrivers может быть лучшим именем, поскольку это не массив.

4. @kaylum Я хочу подсчитать количество элементов, присутствующих внутри связанного списка DriverProfile. И я хочу сделать это, получив доступ к связанному списку через struct ParkingLot .

5. Похоже, вам просто нужно пройти по связанному списку. Предлагаю вам потратить некоторое время на поисковую систему. Объяснения обхода связанного списка, включая полностью рабочий пример кода, доступны в изобилии.