infoarena

infoarena - concursuri, probleme, evaluator, articole => Informatica => Subiect creat de: speedzeal din Martie 27, 2009, 14:29:55



Titlul: memcpy problem
Scris de: speedzeal din Martie 27, 2009, 14:29:55
Cod:
unsigned long int vecini[33][11],aux[11];

for(i=1;i<=k-1;i++)             //sortare vector
    for(j=i+1;j<=k;j++)
       if(vecini[i][0]<vecini[j][0])
{memcpy(aux,vecini[i],sizeof(vecini[i]));
memcpy(vecini[i],vecini[j],sizeof(vecini[j]));
memcpy(vecini[j],aux,sizeof(aux));}
imi copiaza la i=1 si j=1 in aux 1,2,3,4 si nu numerele pe care le-as baga eu....De ce?
Functiile mem sunt numai pentru stringuri?


Titlul: Răspuns: memcpy problem
Scris de: Sima Cotizo din Martie 27, 2009, 14:39:27
Cod:
sizeof(vecin[i]) ---> vecin[i] este de tip int*
Cred ca vrei sa scrii ceva de gen
Cod:
sizeof(int)*nr_elemente_pe_o_linie;
sau sizeof(aux) peste tot, ca tot aia e.


Titlul: Răspuns: memcpy problem
Scris de: speedzeal din Martie 27, 2009, 14:49:19
Cod:
sizeof(vecin[i]) ---> vecin[i] este de tip int*
Cred ca vrei sa scrii ceva de gen
Cod:
sizeof(int)*nr_elemente_pe_o_linie;
sau sizeof(aux) peste tot, ca tot aia e.
scuze...merge....mersi