У меня есть массив структур (Training data[10]
), который содержит некоторые данные, которые я хочу передать функциям.Преобразование структуры структуры в структуру?
int convertTime(Time time)
{
minutes = time.seconds * 60;
// Takes data from data[0].time.seconds and converts them to minutes.
// My only problem is that I am being asked send a struct to this function, but I have to send the array because that's where all my data is stored
return minutes;
}
typedef struct
{
int seconds;
} Time;
typedef struct
{
Time time;
double distance;
} Training;
Training data[10];
Training input;
scanf("%d %lf", input.time.seconds, input.distance);
data[0].time.seconds = input.time.seconds;
data[0].distance = input.distance;
Так что теперь data[0].time.seconds
и data[0].distance
содержит все данные мне нужно. Мне просто нужно передать data[0].time.seconds
функции, но в моем назначении мне предлагается отправить struct Time
в функцию, и я не понимаю, что с Time
хранится только временные данные? Это сохраненные данные, которые я хочу отправить функции.
Как конвертировать секунды в часы, минуты и секунды?
time.hours = seconds/3600;
time.minutes = (seconds - time.hours * 3600)/60;
time.seconds = seconds - 3600 * time.hours - 60 * time.minutes;
Это, кажется, прямо в моих глазах, но это не удается. часы правильно рассчитаны, но не минуты и sconds :(
Вы всегда можете инициализировать время структуры до полезного значения. – suspectus
Не могли бы вы объяснить? – user2985179