J'essaie d'utiliser #define
pour définir une constante dans mon programme. Je me rends compte que je pourrais utiliser const
, mais j'essaie de bien comprendre #define
. Quelqu'un pourrait-il expliquer pourquoi le code suivant ne fonctionne pas et devrait être fait à la place?
#include <stdio.h>
#define M 20;
typedef int Marray_t[M][M]; //I can't define an M x M array
int main() {
Marray_t A;
int i;
for (i = 0; i < M; ++i) { //Can't iterate up to M
A[i] = i;
}
return 0;
}
Vous devez supprimer ;
après20
, comme ça
#define M 20