Bonjour ou Bonsoir !

Je cherche à afficher une fonction qui passe en arguments 2 chaines de caractères que j'ai préalablement demandées à l'utilisateur de remplir.
En fait je cherche à ce que la fonction retourne : sudo timeout 2s airodump-ng -c tab[1] --bssid tab[0] wlan0 (avec les valeurs tab[0] et tab[1] remplies)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
char *concat_afficherclients(char *tab, char *tab2){
char arg0[200];
char *sptr=arg0;
char arg1[200]="sudo timeout 2s airodump-ng";
char arg2[200]=" -c ";
char arg3[200]=" --bssid ";
char arg4[200]=" wlan0";
strcat(arg0,arg1);
strcat(arg0,arg2);
strcat(arg0,tab2);
strcat(arg0,arg3);
strcat(arg0,tab);
strcat(arg0,arg4);
return sptr;
}
 
int main(){
 
 
// init tab
char tab[3][18];
 
//demander a l'utilisateur le bssid 
printf("Saisir le BSSID du wifi: ");
scanf("%s",tab[0]);
 
//demander a l'utilisateur le channel
 
printf("Saisir le channel du wifi: ");
scanf("%s",tab[1]);
 
char* a=concat_afficherclients(tab[0],tab[1]);
printf("%s",&a);
Mais le compilateur affiche : ���n�U
Pourriez-vous m'expliquer mon(es) erreur(s) s'il vous plait ?

Merci d'avance