Bonjour,

1) J'utilise, dans un programme, la fonction suivante

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
char *putBeginningSequence(char* basis, char* s) {
 
  char* char_tmp;
 
  for (int i = 0; i < BEGINNING_SIZE; i++) {
    *char_tmp = basis[i];
    strcat(s, char_tmp);
  }
 
  return s;
 
}
, où j'ai préalablement inclus, dans les directives préprocesseur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
#define BEGINNING_SIZE 3;
. Seulement, je reçois, à la compilation:
error: expected expression before ‘;’ token, pour la ligne où se situe le for.

Pourquoi? Comment y remédier?

2) De plus, j'ai déclaré une autre fonction comme étant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
char *putRandomizeSequence(char*, char*, int, char*);
, et je l'appelle à un moment par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
putRandomizeSequence(basis, argv, k, s);
, où ma fonction main est donnée par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
int main(int argc, char* argv[]){ // ... }
. Pourquoi reçois-je l'erreur warning: passing argument 2 of ‘putRandomizeSequence’ from incompatible pointer type? En effet, je voulais simplement passer un pointeur vers le tableau des paramètres donnés dans le bash...

Comment y remédier?


Merci.