Bonjour,

J'ai fais un petit pgm, pour voir s'il était possible de concatener des arguments passés à un pgm.
Pour vérifier la concatenantion, je fais un printf() des arguments.
Mais lors de l'affichage, j'ai perdu un caractère sur l'argument 2
Quelle en est la raison ?
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
 
#include <stdio.h>     
#include <stdlib.h>    
#include <errno.h>     
#include <string.h>    
#define ALPR    "ALPR" 
int main(int argc,char *argv[]) {
  int a = 0;                     
  strcat(argv[1],argv[2]);       
  printf("argv1: %s\n",argv[1]); 
  printf("argv2: %s\n",argv[2]); 
  a = strcmp(argv[1],ALPR);      
  if (a ==0){                    
     printf("OK");               
     }                           
     else {                      
     printf("nok");              
     }                           
  return 0;                      
}
sortie du pgm
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
argv1: ALPRMA0 
argv2: A0      
nok