Bonjour,
lors d'unr saisie sur stdin je dois séparer la "commande" des differents arguments que l'utilisateur saisit. La saisie se fait sous forme suivante
Que pensez vous du code suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 COMMANDE arg1 arg2 ..
merci
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 /* * Reads the command on stdin * * */ void CO_get(char* buffer, char* cmd, char* args) { cmd = fgets(buffer, MAX_STDIN_LENGTH, stdin); if (cmd != NULL) { // splits command from args args = strchr(buffer, ' '); if (args != NULL) { *args = '\0'; // points to arguments args++; } char* tmp = strchr(args, '\n'); if (tmp != NULL) { *tmp = '\0'; } if( cmd != NULL ) printf("cmd: %s\n", cmd); if( args != NULL ) printf("arg: %s\n", args); } }
Partager