Copier une chaîne de caractères d'un tableau à un autre

elbenji Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
elbenji Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je suis en train de concevoir un programme, qui est long et compliqué avec dev c++, je ne peux donc pas vous le montrer.

Mon programme est presque prêt mais quand je l'exécutes, il ne fonctionne pas jusqu'au bout. Je pense que l'erreur vient des chaînes de caractères, j'ai fait à peu près comme ceci :

Pour déclarer : string name[20][2], A [100][2], B[100][2];

Ensuite dans une boucle allant de 1 à 19 en incrémentant de 1 je fais (avec des compteurs i et j) :

cin>>name[i][j]

Le programme continue, et à un moment donné je veux copié quelques chaînes de caractères de "name" dans A et B, comme ceci (je suis dans une autre boucle avec un compteur k en plus) :

A[k][j]=name[i][j];
B[k][j]=name[i][j];

Et enfin j'affiche A et B : cout<<A[k][j]; cout<<B[k][j];

Mais cela ne fonctionne pas, le problème vient-il de là ? Est-ce bien comme ceci qu'on copie des chaînes de caractères d'un tableau à un autre ?

Merci pour votre aide.

A voir également:

4 réponses

Mehdi
 
tu as déclaré des tableaux de 2 dimension tous avec 2 colonnes, mais tu n'as pas mentionné comment tu as fait la boucle de parcours, parce que l'indice "j" ne doit pas dépasser 2 sinon il va te générer une exception ("indice hors .....") !!
0
elbenji Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
Non pas de soucis avec ça je veux 2 colonnes. S'il n'y a pas de problèmes sur ce que j'ai écrit, l'erreur doit être ailleurs :/
0
Mehdi
 
non le souci peut être dans la boucle !! qui doit être imbriqué bien sûr !! montre moi ta boucle !!
0
elbenji Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
Y'a beaucoup de choses dans le programme :/ J'ai essayé de condenser pour cibler le problème mais ça reste long (fais pas attention aux accolades, si le compte n'y est pas c'est que j'ai supprimé des choses)

// Traitement du programme :
for (i=1; i<=93; i=i+1)
{
srand(rdtsc());
{
a=(rand()/(RAND_MAX / 100)) + 1;
}

if (a<=98)
{
srand(rdtsc());
{
b=(rand()/(RAND_MAX / 100000)) + 1;
}
for (k=1; k<=30; k=k+1)
{
if (b<=55020)
A[i][1]=name[k][1];
}
k=31;
}
}

cout<<A[i][1]<<endl;

}
0