размера 5, который я хочу добавить, в соответствии с некоторыми условиями, которые я навязываю. Обе строки в формате 00:00. Первая строка (s1) представляет определенное время вылета самолета, вторая - насколько задерживается этот полет ...
Это должно быть сделано на 24-часовой основе.
Скажем, например
s1 = 10: 45
s1 = 01: 50
поэтому сначала я должен добавить 5 и 0, посмотреть, есть ли результат, и если результат меньше 9, затем добавить 4 и 5, посмотреть, если результат меньше 6. Если это не так Я добавляю 6 к сложению и добавляю результат (1) к 0 и 1, затем добавляю 1 к 0.
5 + 0 = 5
4 + 5 = 9 9-6 = 3 выполнения: 1
0 + 1 + 1 = 2
0 + 1 = 1
12: 35
Я хотел бы получить s1 = 12: 35
Я не совсем понимаю, как работают указатели ... Я пытался понять их, но это было напрасно ...
Вы можете мне помочь?
У меня есть несколько идей, которые я опубликую здесь:
#include <stdio.h>
#include <string.h>
char*add_hours(char s1[], char s2[])
int i;
for(i=4; i>3; i--){
if(s1[i]+s2[i]>9){
strcpy(s1[i], ((s1[i]+s2[i])-10);
strcpy(s1[i-1], (s1[i-1]+1));
}
...
}
код продолжается некоторое время, но повторяется несколько раз. Поэтому я не думал, что мне нужно копировать все это здесь. Проблема в том, что он продолжает мне показывать это предупреждение:
"warning: passing argument 1 of 'strcpy' makes pointer from integer without a cast
/usr/include/string.h:128: note: expected 'const char * _restrict_' but argument if of type 'int'
И то же самое для второго аргумента, для каждого strcpy есть ... Я понимаю ошибку (я думаю), но я не знаю, как ее исправить ...