Copie de tableau vers un autre

Signaler
Messages postés
11
Date d'inscription
lundi 6 février 2006
Statut
Membre
Dernière intervention
8 mars 2006
-
Messages postés
11
Date d'inscription
lundi 6 février 2006
Statut
Membre
Dernière intervention
8 mars 2006
-
salut tlm
je veux copier un tableau dexu dim vers un autre plus grand (il ne s'agit pas de la meme taille) alors j'ai fait le code suivant :

for(i=0, k=0; i < lignes, k < _Lignes; i++, k+=2)
{
for(j=0, l=0 ; j < colonnes, l < _Colonnes; j++, l+=2)
imageDest[k][l] = imageSource[i][j];
}
le programme fonctionne super bien mais en le compilant il me donne deux warning concernant mes deux boucles fort.
svp est ce que vous pouvez m'aider a trouver une solution meilleur

et merci beaucoup
salut

10 réponses

Messages postés
237
Date d'inscription
lundi 20 mai 2002
Statut
Membre
Dernière intervention
22 juillet 2011
2
Salut :)
Et les warnings qu'il te donne on les devine ? Donne-les nous, et on pourra t'aider...
@+
Messages postés
46
Date d'inscription
lundi 19 mai 2003
Statut
Membre
Dernière intervention
16 avril 2009

salut
pourquoi pas :

memcpy(imageDest, imageSource, sizeof(imageSource));

à la place de tes 2 boucles ?
saibe
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
30
memcpy largement préférable comme dit plus haut.
Bien régler la taille du 3eme param de memcpy.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
Messages postés
11
Date d'inscription
lundi 6 février 2006
Statut
Membre
Dernière intervention
8 mars 2006

salut les amis et merci pour vos reponses
mais si vous voyez mon code, je veux copier mon tableau de (exp) de 3 colonnes et 4 lignes vers un autre de 5c et 7l et dans le nouvea j'ecris dans une case et je saute une cad la deuxoieme restera vide, alors puis je faire ca avec memcpy?
merci encore
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
30
pas de memcpy en ce cas car memcpy écrit en continu.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
Messages postés
11
Date d'inscription
lundi 6 février 2006
Statut
Membre
Dernière intervention
8 mars 2006

salut
alors les boules restent la seulent solution dans ce cas ?
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
30
boucles ou autre mais pas de memcpy vu que tu dois sauter des cases.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
Messages postés
11
Date d'inscription
lundi 6 février 2006
Statut
Membre
Dernière intervention
8 mars 2006

et ca peut etre quoi l'autre, parce que je pense que ma solution n'etait pas bein optimisée
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
30
Une série d'affectations directes sans boucle quand on sait d'avance où on fait les copies, c'est toujours plus rapide qu'un boucle.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
Messages postés
11
Date d'inscription
lundi 6 février 2006
Statut
Membre
Dernière intervention
8 mars 2006

salut
oui c vrai, mais les valeurs que je dois copier ne sont pas fixe et meme les tailles des deux tableaux, de plus je peu meme avoir des centaines de colonnes et lignes alors l'affectation directes ne sera pas une bonne solution