Eh bien, je suis aux prises avec les pointeurs, pourquoi la fonction n'est-elle pas la plus grande à la fin (oui de cette fonction fictive)? (Code de sortie 6) Ty aidePointers exit code 6
code:
int search(int const a[], int n, int key) {
for (int *i = a; i < a + n; i++) {
if (key == *i) return 1;
}
return 0;
}
void print_row(int const a[], int n, int row) {
for (int *i = a + n * row; i < a + n * (row + 1); i++) {
printf("%d ", *i);
}
printf("\n");
}
void biggest(double x, long *int_part, double *frac_part) {
*int_part = (long) x;
*frac_part = x - *int_part;
}
main() {
int tempretures[7][24];
for (int *i = &tempretures[0][0]; i < &tempretures[7][24]; i++) {
static int j = 1;
*i = j;
j+=2;
}
tempretures[6][5] = 32;
for (int i = 0; i < 7; i++) {
for (int j = 0; j < 24; j++) {
printf("%d ", tempretures[i][j]);
}
printf("\n");
}
printf("Is it: %d\n", search(tempretures, 7*24, 32));
for (int i = 0; i < 7; i++) {
print_row(tempretures, 24, i);
}
long a = 0; double b = 0;
biggest(5.67, &a, &b);
printf("%li", a);
}
'int tempretures [7] [24];' dernier élément est 'tempretures [6] [23]'. Donc, à côté des derniers éléments est 'tempretures [6] [24]' – BLUEPIXY
J'ai vraiment raté ça, merci! –