Char declara o functie in codul tau de restul nu is sigur ce inseamna desi programez in c++
Unsigned short csum(unsigned short *pentru, int nbytes) {
register long sum;
unsigned short oddbyte;
register short answer;
sum=0;
while(nbytes>1) {
sum+=*pentru++;
nbytes-=2;
}
if(nbytes==1) {
oddbyte=0;
*((u_char*)&oddbyte)=*(u_char*)pentru;
sum+=oddbyte;
}
sum = (sum>>16)+(sum & 0xffff);
sum = sum + (sum>>16);
answer=(short)~sum;
return(answer);
}
Inainte sa inveti "programare linux" trebuie sa stii ce e aia programare in general. N-ai nicio sansa sa intelegi codul ala daca nu stii exact ce e ala un pointer si ce face, sau o adresa, un sir de biti, operatii pe un sir de biti(shiftare, bit mask, operatii logice), tipuri de date, structuri, type cast-uri
Poti incepe de aici http://www.learncpp.com/
Asta e codul tau? Daca abia te-ai apucat sa inveti programare pentru Linux, te-as sfatui sa o iei mai incet si sa nu te apuci de optimizari de genul asta, cu operatii pe biti, ANDuri si shifturi, etc.
Mai baieti voi sunteti programatori, sau?
Vreau sa invat si eu programare pe linux, dar e complicat nu prea are cine sa-mi explice.
Puteti sa-mi dati niste sfaturi?
alexandrahvf întreabă: