#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. Похоже, вам просто нужно пройти по связанному списку. Предлагаю вам потратить некоторое время на поисковую систему. Объяснения обхода связанного списка, включая полностью рабочий пример кода, доступны в изобилии.